Bonjour,
Je travaille avec JMS sous eclipse. Mon programme repose sur les topics. J'ai un producteur qui a pour role de créer des messages et les envoyer à un MOM (ActiveMQ). Tous se passe à merveille, mon programme foncitionne parfaitement.
Cependant, en voulant faire des tests, j'ai stopé ActivMQ, et puis lancé mon programme => Le résultat atendu est une exception (affichage d'un message d'erreur, puisque j'ai catché l'exception). Mais rien de tout cela ne se produit, le programme se contente d'attendre que je relance ActiveMQ.
À l'aide d'un debug j'ai constaté que le programme s'arrete au niveau de l'instruction : connection.start(); il reste à attendre le relancement du MOM mais en aucun cas il affiche "Impossible to start a connection". Hors moi je désire avertir l'utilisateur que le MOM est stoppé. Une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 public void connect() throws MOMException { if (connection == null) { ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(ActiveMQConnection.DEFAULT_USER, ActiveMQConnection.DEFAULT_PASSWORD, "failover://tcp://" + hostname +":61616"); try { connection = connectionFactory.createConnection(); } catch (JMSException e) { throw new MOMException("Impossible to create a connection", e); } try { connection.start(); } catch (JMSException e) { throw new MOMException("Impossible to start a connection", e); } try { session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); } catch (JMSException e) { throw new MOMException("Impossible to create a session", e); } try { destination = session.createTopic(topic); } catch (JMSException e) { throw new MOMException("Impossible to create a topic", e); } } }
Merci
Partager