Erreur de deploiement ejb jboss eclipse

crazyghandi Messages postés 323 Statut Membre -  
xav3601 Messages postés 3390 Statut Membre -
bonjour,

je developpe un projet jee avec un projet web dynamique et un projet ejb

mon serveur jboss tourne correctement, mais lorsque je tente d'accéder a mon ejb depuis ma servlet j'ai l'exception suivante :

javax.naming.NameNotFoundException: DomainManagerBean not bound
14:04:04,284 ERROR [STDERR] at org.jnp.server.NamingServer.getBinding(NamingServer.java:529)
etc..

pourtant, dans la console au lancement du serveur :

14:03:18,330 INFO [EJBContainer] STARTED EJB: cto07.ejb.ReservedDomainBean ejbName: ReservedDomainBean
14:03:18,341 INFO [EJB3Deployer] Deployed: file:/C:/jboss-4.2.2.GA/server/default/tmp/deploy/tmp7229925441306048839CTO07.ear-contents/CTO07EJB.jar

donc je ne vois pas pourquoi mon bean serait mal deployé

quelqu'un a une idee ?

merci d'avance

A voir également:

8 réponses

xav3601 Messages postés 3390 Statut Membre 311
 
On pourrait avoir la partie du code qui accède au bean?

Merci :-)
0
crazyghandi Messages postés 323 Statut Membre 19
 
merci pour la reponse je cherche depuis 1h

ceci est le code dans la servlet :

Context context = new InitialContext(); 
DomainManager stock = (DomainManager) context.lookup("DomainManagerBean/remote");


le /remote est il necessaire ?

par ailleurs je remarque que le ejb n'est pas déclaré dans web.xml est ce la cause du probleme ?

si oui, comment on l'integre ?

merci d'avance
0
xav3601 Messages postés 3390 Statut Membre 311
 
Il me semble que avant de faire un lookup il faut faire un bind.
Si tu n'en as pas fais il te renvoi forcément une erreur "not bound".

Sinon dans ton lookup il faut mettre le nom avec lequel tu as fais ton bind pour pouvoir le récupérer.
0
crazyghandi Messages postés 323 Statut Membre 19
 
ok et qu'est ce que tu apelles un bind ?

ca se fait dans la servlet ou dans l'implementation de l'ejb ?

encore merci de m'aider
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jboss38 Messages postés 1030 Statut Membre 33
 
MDR je suis ton server HAHAHHAHAHAHAH
0
xav3601 Messages postés 3390 Statut Membre 311
 
En fait ton EJB c'est un peu un contenaire, dans lequel tu peux mettre un type de donnée que tu as définie dans son implémentation (il me semble...).
Donc ensuite il faut que tu entres des données dedans (Bind) et après tu peux aller les récupérer (LookUp). Tout celà à partir de ta servlet.

En gros tu pourras faire ca:


Context context = new InitialContext(); 

//tu créés un objet DomainManager
DomainManager stock = new DomainManager();
//tu le remplis
stock.set...
stock.set...

//tu le bind
context.bind("DomainManagerBean",stock)

//et apres tu peux le récupérer ici
DomainManager stockRecup = (DomainManager) context.lookup("DomainManagerBean/remote");



Après le principe c'est de faire un code qui bind dans une tes pages jsp, et un code qui récupère dans une autre page!

J'espère avoir été clair, et désolé si tous mes dires ne sont pas exact, mais je parle de mémoire...

0
crazyghandi Messages postés 323 Statut Membre 19
 
en passant au debugger c'est la ligne d'instanciation de l'objet qui lève l'exception

DomainManager stock = new DomainManager();

donc il ne bind meme pas

je me redemande si ca peu venir du fait ke l'ejb n'est pas déclaré dans le web.xml

autre point, je m'apercois en faisant des recherches et en comparant a d'autres posts que je n'ai pas de ejb-jar.xml dans mon projet ejb

et enfin peux tu m'expliquer ce qu'est le mapping jndi ?

merci
0
xav3601 Messages postés 3390 Statut Membre 311
 
Juste comme ca, je t'ai donné un code sans connaitre rien du tout de ton architecture, donc y'a peut être des trucs à modifier ^^

Ceci dit si tu n'as pas d'ej-jar.xml en effet c'est pas normal!
0