J'ai rencontré des problèmes dans notre application où deux instances de l'application recevaient le même message même si leurs clients étaient créés à l'aide de createSharedConsumer et avaient le même nom d'abonnement. Au début, je pensais que cela pourrait être notre application ou la façon dont nous utilisions SpringJMS, donc j'ai créé un exemple d'application qui crée 3 usines de connexion. Ces usines sont ensuite utilisées pour créer le message envoyé à un sujet et deux écouteurs dans la même application (mais comme ils utilisent une fabrique de connexions et un ID de client différents, ils doivent être complètement séparés) mais les deux écouteurs reçoivent les deux connexions. le message.jms 2 abonné partagé
J'ai essayé d'exécuter ceci contre HornetQ et Tibco et obtenir le même résultat.
consommateurs de messages créés comme suit dans une classe qui implémente MessageListener
Connection connection = factory.createConnection(userName, password);
Session session = connection.createSession();
MessageConsumer topicReceiver = session.createSharedConsumer(topic, SUBSCRIPTION_NAME);
topicReceiver.setMessageListener(this);
connection.start();
A tous ceux qui ont utilisé avec succès les consommateurs partagés de moi le point 2.0 JMS dans le sens de ce que je suis absent?