Salutations,

Je crée un MDB qui est sensé envoyer des message pour un topic.

Sauf que quand j'initialise les propriétés j'ai comme erreur fileNotExist pour le fichier jndi.properties que je charge de cette manière:

props.load(new FileInputStream("jndi.properties"))


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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
public class MailConsomateur implements MessageListener {
 
	public static void main(String[] args) throws Exception{
 
		new MailConsomateur();
	}
 
	public MailConsomateur() throws Exception {
 
		Properties prop = new Properties();
		prop.load(new FileInputStream("jndi.properties"));
		prop.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
		prop.put(Context.PROVIDER_URL, "jnp://localhost:1099");
		InitialContext ctx = new InitialContext(prop);
 
		// 1: recherche d'une connection factory
 
		ConnectionFactory factory = (ConnectionFactory)ctx.lookup("ConnectionFactory");
 
		// 2: Creation d'une connection JMS
 
		Connection conn = factory.createConnection();
 
		// 3: Creation d'une session
 
		Session session = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
 
		// 4: Recherche d'une destination
 
		Topic topic = (Topic)ctx.lookup("topic/MailMdb");
 
		// 5: Creation d'un consomateur de message 
 
		MessageConsumer consomateur = session.createConsumer(topic);
		consomateur.setMessageListener(this);
		System.out.println("Client JMS à l'écoute du message ");
 
		conn.start();
 
	}
 
	@Override
	public void onMessage(Message msg) {
		// TODO Auto-generated method stub
 
		if (msg instanceof TextMessage) {
 
			TextMessage tm = (TextMessage)msg;
 
			try {
 
				String mail = tm.getText();
 
				System.out.println("Le Client vient de reçevoir le mail suivant : "+mail);
 
			}catch(JMSException e){
				e.printStackTrace();
			}
		}
 
	}
 
	@PreDestroy
	public void remove() {
 
		System.out.println("Suppression du client du Mailing");
	}
 
}