TP11 : EJB Exception

Modérateurs : graffiop, jmdouin, agoncal, mlebihan

NNACHI
Messages : 8
Inscription : 04 nov. 2014 17:12

TP11 : EJB Exception

Message par NNACHI » 12 janv. 2015 16:12

Bonjour

Je me retrouve avec une EJB Exception lpour le service de création de l'order (cela marche bien pour le catalog)

J'ai bien ajouté l'annotation @Stateless(name = "OrderSB") dans la le OrderServiceBean.java

Mais rien à faire, tjs les mêmes erreurs...

Est ce qu'il y a une piste vers laquelle m'orienter ?

voici le log au complet

testServiceCreateOrder(am): Votre exécutable a échoué en levant une exception.

Exception levée: javax.ejb.EJBException

Pile d'appel:
javax.ejb.EJBException
at com.sun.ejb.containers.EJBContainerTransactionManager.processSystemException(EJBContainerTransactionManager.java:748)
at com.sun.ejb.containers.EJBContainerTransactionManager.completeNewTx(EJBContainerTransactionManager.java:698)
at com.sun.ejb.containers.EJBContainerTransactionManager.postInvokeTx(EJBContainerTransactionManager.java:503)
at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:4566)
at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:2074)
at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:2044)
at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:212)
at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:79)
at sun.proxy.$Proxy290.createOrder(Unknown Source)
at sun.reflect.GeneratedMethodAccessor326.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie.dispatchToMethod(ReflectiveTie.java:143)
at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:173)
at com.sun.corba.ee.impl.protocol.ServerRequestDispatcherImpl.dispatchToServant(ServerRequestDispatcherImpl.java:528)
at com.sun.corba.ee.impl.protocol.ServerRequestDispatcherImpl.dispatch(ServerRequestDispatcherImpl.java:199)
at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.handleRequestRequest(MessageMediatorImpl.java:1549)
at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.handleRequest(MessageMediatorImpl.java:1425)
at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.handleInput(MessageMediatorImpl.java:930)
at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:213)
at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.handleRequest(MessageMediatorImpl.java:694)
at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.dispatch(MessageMediatorImpl.java:496)
at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.doWork(MessageMediatorImpl.java:2222)
at com.sun.corba.ee.impl.threadpool.ThreadPoolImpl$WorkerThread.performWork(ThreadPoolImpl.java:497)
at com.sun.corba.ee.impl.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:540)
Caused by: com.yaps.petstore.common.locator.ServiceLocatorException: javax.naming.NamingException: Lookup failed for 'java:global/yapswtp11/CreditCartServiceSB?stateful' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NameNotFoundException: CreditCartServiceSB?stateful not found]
at com.yaps.petstore.common.locator.ServiceLocator.getHome(Unknown Source)
at com.yaps.petstore.common.locator.ServiceLocator.getHome(Unknown Source)
at com.yaps.petstore.server.service.order.OrderServiceBean.getCreditCardService(Unknown Source)
at com.yaps.petstore.server.service.order.OrderServiceBean.createOrder(Unknown Source)
at sun.reflect.GeneratedMethodAccessor327.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1081)
at org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1153)
at com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:4786)
at com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:656)
at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)
at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:55)
at org.jboss.weld.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:52)
at sun.reflect.GeneratedMethodAccessor269.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)
at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)
at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)
at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:140)
at sun.reflect.GeneratedMethodAccessor270.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)
at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:369)
at com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:4758)
at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:4746)
at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:205)
... 18 more
Caused by: javax.naming.NamingException: Lookup failed for 'java:global/yapswtp11/CreditCartServiceSB?stateful' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NameNotFoundException: CreditCartServiceSB?stateful not found]
at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:491)
at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:438)
at javax.naming.InitialContext.lookup(InitialContext.java:411)
at javax.naming.InitialContext.lookup(InitialContext.java:411)
... 50 more
Caused by: javax.naming.NameNotFoundException: CreditCartServiceSB?stateful not found
at com.sun.enterprise.naming.impl.TransientContext.doLookup(TransientContext.java:237)
at com.sun.enterprise.naming.impl.TransientContext.lookup(TransientContext.java:204)
at com.sun.enterprise.naming.impl.TransientContext.lookup(TransientContext.java:208)
at com.sun.enterprise.naming.impl.TransientContext.lookup(TransientContext.java:208)
at com.sun.enterprise.naming.impl.SerialContextProviderImpl.lookup(SerialContextProviderImpl.java:66)
at com.sun.enterprise.naming.impl.LocalSerialContextProviderImpl.lookup(LocalSerialContextProviderImpl.java:114)
at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:478)
... 53 more

mariko_l
Messages : 7
Inscription : 01 déc. 2014 23:47

Re: TP11 : EJB Exception

Message par mariko_l » 12 janv. 2015 22:52

Bonjour,
Il semblerait que le composant qui lève des exceptions n'a pas été correctement déployé.
Assurez vous dans la console Glassfish que les éléments de votre application ont correctement été déployés.
Si ne n'est pas le cas, arrêtez Glassfish, faites un clean avec ant avant de redéployer.

graffiop
Messages : 663
Inscription : 21 juin 2005 14:05

Re: TP11 : EJB Exception

Message par graffiop » 13 janv. 2015 16:48

Bonjour,

C'est BarkBank qui n'a pas été déployé.

Code : Tout sélectionner

Caused by: javax.naming.NamingException: Lookup failed for 'java:global/yapswtp11/CreditCartServiceSB?stateful' 
Pour le faire il faut exécuter en ligne de commande

Code : Tout sélectionner

ant barkbank-deploy

NNACHI
Messages : 8
Inscription : 04 nov. 2014 17:12

Re: TP11 : EJB Exception [RESOLU]

Message par NNACHI » 14 janv. 2015 3:25

Bonjour

Merci pour vos réponses

Cependant, j'ai essayé de redéployer barkbank (y compris en recopiant manuellement les fichiers dans le répertoire autodeploy de glasssfish)

J'ai vérifié sur le http://localhost:8080/barkbank/ et j'ai bien la page d’accueil de barkbank

mais j'ai tjs la même EJB exception, comme si l'EJB de CreditCartServiceSB n'était pas retrouvé...

Des pistes pour m'orienter ?

Caused by: com.yaps.petstore.common.locator.ServiceLocatorException: javax.naming.NamingException: Lookup failed for 'java:global/yapswtp11/CreditCartServiceSB?stateful' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NameNotFoundException: CreditCartServiceSB?stateful not found]

Merci d'avance

graffiop
Messages : 663
Inscription : 21 juin 2005 14:05

Re: TP11 : EJB Exception

Message par graffiop » 14 janv. 2015 17:46

Regardez le fichier de log .../glassfish-4.1/glassfish/domains/domain1/logs/server.log
Recherchez y "JNDI names" et des erreurs éventuelles.

Vous pouvez aussi regarder la console d'administration à l'adresse http://localhost:4848 et trouver yapswtp11 sous l'item Applications pour voir ses servlets et EJB déployés.

Nettoyer aussi Glassfish (après avoir quitté Netbeans et arrêter GlassFish) en supprimant les fichiers du tp11 déployés dans glassfish-4.1\glassfish\domains\domain1\applications et C:\Applications\java\glassfish-4.1\glassfish\domains\domain1\autodeploy.
Puis faire ant deploy avant de relancer GlassFish.

Répondre