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