Bonjour tout le monde.En ce moment je travaille sur une application distribué et on m'a demandé d'utiliser les ejb3, je suis arrivé a implementé les ejb et j'ai pu les tester avec de simple client(des classes avec un main) en utilisant JNDI mais là ou ça coince est quand je veux les appeler a partir de mon appli web j'execute le même code avec la même config JNDI mais je reçois l'erreur suivante:
sachant que l'EJB et l'app sont déployés sur le même serveur jboss.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2Le Nom GestionDeStockBean n'est pas li� � ce Contexte
Voici le code de ma classe service ou je veux injecter l'ejb:
l'erreur ce produit a ce niveau là.
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 package service; import java.util.Iterator; import java.util.List; import javax.annotation.Resource; import javax.ejb.*; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import ejb11.GestionDeStock; import ejb11.Produit; public class ProduitManagerImp implements ProduitManager { //@Resource private GestionDeStock gestionStock; public ProduitManagerImp(){ try { Context context = new InitialContext(); System.out.println("hnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn"); gestionStock = (GestionDeStock) context.lookup("GestionDeStockBean/remote"); System.out.println("hnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn"); } catch (Exception e) { System.out.print("hna:"+e.getMessage()); } } @Override public void ajouter(Produit produit) { gestionStock.ajouter(produit); } @Override public List<Produit> listerTousLesProduits11() { // TODO Auto-generated method stub return gestionStock.listerTousLesProduits(); } @Override public Produit rechercherProduit(String id) { // TODO Auto-generated method stub return null; } }
Partager