IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Wildfly/JBoss Java Discussion :

Problème avec un MDB sous jboss


Sujet :

Wildfly/JBoss Java

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 13
    Points : 11
    Points
    11
    Par défaut Problème avec un MDB sous jboss
    Bonjour,

    j'ai essayé de faire un tutorial que j'ai trouvé sur internet pour la création d'un EJB3 de type MDB avec les annotations qui vont bien et je me retrouve avec une exception de ce type:

    javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial

    J'ai pourtant bien suivi ce qu'était indiqué sur le tutorial, mon MDB ressemble à ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    @MessageDriven(name="ProjectMessageBean", activationConfig = {
    	    @ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Queue"),
    	    @ActivationConfigProperty(propertyName="destination", propertyValue="queue/testQueue")
    })
    public class ProjectMessageBean implements MessageListener{
     
     
    	public void onMessage(Message message) {
                        ....
                 }
     
    }

    L'exception apparaît lors du déploiement de l'ear.
    Si je commente les annotations de l'ejb je n'ai plus d'exception.


    J'ai bien le fichier jndi.properties de jboss dans mon projet.
    J'avoue ne pas bien comprendre le problème...

    Ai-je oublié des choses?
    Y a t-il une config de jboss à faire, pour jms par exemple ?
    Des lib qui manquent?

  2. #2
    Rédacteur
    Avatar de longbeach
    Profil pro
    Architecte de système d’information
    Inscrit en
    Avril 2003
    Messages
    943
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Avril 2003
    Messages : 943
    Points : 2 370
    Points
    2 370
    Par défaut
    Quelle est la version de JBoss ?
    Comment tu déploies ton application ?
    Peut-on voir les logs ? le fichier jndi.properties, les classes ... ?

    La cause d'une exception du type javax.naming.NoInitialContextException ne devrait pas être trop longue à déterminer.

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    La version de jboss: 4.2.2GA

    Mon application est déployée sous forme d'un ear qui contient les jar utilisé par mon appli, et un jar pour tous les ejb que j'ai développé dans lequel j'ai mon ejb de type mdb.

    Le fichier jndi:
    java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
    java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
    java.naming.provider.url=localhost:1099

    La classe de mon ejb mdb est comme celle mise dans le premier message. Je l'ai réduit aux max mais j'ai quand même l'erreur. Lexception disparaituniquement quand je supprime les annotations.

    Les logs:

    19:31:49,716 WARN [ServiceController] Problem starting service persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_o
    ne_BE_EJB3
    javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application
    resource file: java.naming.factory.initial
    at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:645)
    at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
    at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:284)
    at javax.naming.InitialContext.lookup(InitialContext.java:351)
    at org.jboss.ejb3.entity.PersistenceUnitDeployment.start(PersistenceUnitDeployment.java:216)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.ejb3.ServiceDelegateWrapper.startService(ServiceDelegateWrapper.java:103)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
    at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
    at $Proxy0.start(Unknown Source)
    at org.jboss.system.ServiceController.start(ServiceController.java:417)
    at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
    at $Proxy115.start(Unknown Source)
    at org.jboss.ejb3.JmxKernelAbstraction.install(JmxKernelAbstraction.java:120)
    at org.jboss.ejb3.Ejb3Deployment.startPersistenceUnits(Ejb3Deployment.java:627)
    at org.jboss.ejb3.Ejb3Deployment.start(Ejb3Deployment.java:351)
    at org.jboss.ejb3.Ejb3Module.startService(Ejb3Module.java:91)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
    at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
    at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
    at $Proxy0.start(Unknown Source)
    at org.jboss.system.ServiceController.start(ServiceController.java:417)
    at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
    at $Proxy33.start(Unknown Source)
    at org.jboss.ejb3.EJB3Deployer.start(EJB3Deployer.java:512)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
    at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
    at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:97)
    at org.jboss.system.InterceptorServiceMBeanSupport.invokeNext(InterceptorServiceMBeanSupport.java:238)
    at org.jboss.wsf.container.jboss42.DeployerInterceptor.start(DeployerInterceptor.java:87)
    at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188)
    at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
    at $Proxy34.start(Unknown Source)
    at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025)
    at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1015)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819)
    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
    at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
    at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
    at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
    at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
    at $Proxy9.deploy(Unknown Source)
    at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
    at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:610)
    at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
    at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:274)
    at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:225)
    19:31:49,987 INFO [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
    19:31:49,989 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=ActivitySessionBean,serv
    ice=EJB3 with dependencies:
    19:31:49,995 INFO [JmxKernelAbstraction] persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3
    19:31:49,999 INFO [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
    19:31:50,004 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=ActorSessionBean,service
    =EJB3 with dependencies:
    19:31:50,009 INFO [JmxKernelAbstraction] persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3
    19:31:50,013 INFO [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
    19:31:50,017 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=CompanySessionBean,servi
    ce=EJB3 with dependencies:
    19:31:50,023 INFO [JmxKernelAbstraction] persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3
    19:31:50,040 INFO [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
    19:31:50,042 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=CountrySessionBean,servi
    ce=EJB3 with dependencies:
    19:31:50,047 INFO [JmxKernelAbstraction] persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3
    19:31:50,055 INFO [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
    19:31:50,057 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=LoginSessionBean,service
    =EJB3 with dependencies:
    19:31:50,063 INFO [JmxKernelAbstraction] persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3
    19:31:50,070 INFO [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
    19:31:50,072 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=MediaSessionBean,service
    =EJB3 with dependencies:
    19:31:50,077 INFO [JmxKernelAbstraction] persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3
    19:31:50,081 INFO [EJB3Deployer] Deployed: file:/D:/Dev/jboss-4.2.2.GA/server/default/tmp/deploy/tmp46997project_one_be.ear-contents/project_one_ejb_
    be.jar
    19:31:50,103 INFO [EARDeployer] Started J2EE application: file:/D:/Dev/jboss-4.2.2.GA/server/default/deploy/project_one_be.ear
    19:31:50,108 ERROR [URLDeploymentScanner] Incomplete Deployment listing:

    --- MBeans waiting for other MBeans ---
    ObjectName: persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3
    State: FAILED
    Reason: javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an ap
    plication resource file: java.naming.factory.initial
    I Depend On:
    jboss.jca:service=DataSourceBinding,name=projectOneDS
    Depends On Me:
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=ActivitySessionBean,service=EJB3
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=ActorSessionBean,service=EJB3
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=CompanySessionBean,service=EJB3
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=CountrySessionBean,service=EJB3
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=LoginSessionBean,service=EJB3
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=MediaSessionBean,service=EJB3

    ObjectName: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=ActivitySessionBean,service=EJB3
    State: NOTYETINSTALLED
    I Depend On:
    persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3

    ObjectName: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=ActorSessionBean,service=EJB3
    State: NOTYETINSTALLED
    I Depend On:
    persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3

    ObjectName: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=CompanySessionBean,service=EJB3
    State: NOTYETINSTALLED
    I Depend On:
    persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3

    ObjectName: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=CountrySessionBean,service=EJB3
    State: NOTYETINSTALLED
    I Depend On:
    persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3

    ObjectName: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=LoginSessionBean,service=EJB3
    State: NOTYETINSTALLED
    I Depend On:
    persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3

    ObjectName: jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=MediaSessionBean,service=EJB3
    State: NOTYETINSTALLED
    I Depend On:
    persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3

    --- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM ---
    ObjectName: persistence.units:ear=project_one_be.ear,jar=project_one_ejb_be.jar,unitName=project_one_BE_EJB3
    State: FAILED
    Reason: javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an ap
    plication resource file: java.naming.factory.initial
    I Depend On:
    jboss.jca:service=DataSourceBinding,name=projectOneDS
    Depends On Me:
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=ActivitySessionBean,service=EJB3
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=ActorSessionBean,service=EJB3
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=CompanySessionBean,service=EJB3
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=CountrySessionBean,service=EJB3
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=LoginSessionBean,service=EJB3
    jboss.j2ee:ear=project_one_be.ear,jar=project_one_ejb_be.jar,name=MediaSessionBean,service=EJB3

    En espérant que vous pourrez me venir en aide.

  4. #4
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    Finalement j'ai réussi à le résoudre.
    J'ai mis le mdb dans un jar à part contenu dans l'ear global.
    Et du coup je n'ai plus l'exception précédente.
    Voila.
    Merci.
    Fred

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème MDB sous JBoss + Eclipse
    Par coxalass dans le forum Wildfly/JBoss
    Réponses: 0
    Dernier message: 03/05/2011, 14h17
  2. Problème avec un diapo sous IE
    Par Mucsy dans le forum Général JavaScript
    Réponses: 19
    Dernier message: 06/01/2006, 00h40
  3. problème avec les div sous Mozilla
    Par MrsFrizz dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 13/10/2005, 11h54
  4. problème avec z-index sous firefox ???
    Par SpaceFrog dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 22/09/2005, 20h39
  5. [Sybase]Problème avec le BCP sous Solaris
    Par sl dans le forum Sybase
    Réponses: 3
    Dernier message: 09/09/2004, 07h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo