Je reçois le message d'erreur ci-dessous lors du déploiement d'un fichier JAR d'archive entreprise (.ear) vers JBoss 7.
Quelqu'un peut-il s'il vous plaît me donner des conseils sur la façon de résoudre ce problème.
Le journal JBoss est
14:44:30,812 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC00001: Failed to start service jboss.deployment.unit."Demo2.jar".PARSE: org.jboss.msc.service.StartException in service jboss.deployment.unit."Demo2.jar".PARSE: Failed to process phase PARSE of deployment "Demo2.jar"
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.Java:119) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.Java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.Java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1145) [rt.jar:1.7.0_17]
at Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:615) [rt.jar:1.7.0_17]
at Java.lang.Thread.run(Thread.Java:722) [rt.jar:1.7.0_17]
Caused by: org.jboss.msc.service.ServiceNotFoundException: Service service jboss.ejb.default-resource-adapter-name-service not found
at org.jboss.msc.service.ServiceContainerImpl.getRequiredService(ServiceContainerImpl.Java:447) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at org.jboss.as.ejb3.deployment.processors.MessageDrivenComponentDescriptionFactory.getDefaultResourceAdapterName(MessageDrivenComponentDescriptionFactory.Java:273)
at org.jboss.as.ejb3.deployment.processors.MessageDrivenComponentDescriptionFactory.processMessageBeans(MessageDrivenComponentDescriptionFactory.Java:153)
at org.jboss.as.ejb3.deployment.processors.MessageDrivenComponentDescriptionFactory.processAnnotations(MessageDrivenComponentDescriptionFactory.Java:81)
at org.jboss.as.ejb3.deployment.processors.AnnotatedEJBComponentDescriptionDeploymentUnitProcessor.processAnnotations(AnnotatedEJBComponentDescriptionDeploymentUnitProcessor.Java:58)
at org.jboss.as.ejb3.deployment.processors.AbstractDeploymentUnitProcessor.deploy(AbstractDeploymentUnitProcessor.Java:81)
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.Java:113) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
... 5 more
Le problème est que vous essayez de déployer une application avec des MDB dans une configuration standalone.xml pour laquelle la prise en charge de la messagerie n’est pas activée. (le sous-système de messagerie est manquant)
si vous exécutiez le serveur avec standalone-full.xml, cela fonctionnerait.
vous pouvez le faire en lançant:
./standalone.sh -c standalone-full.xml
sur linux ou
standalone.bat -c standalone-full.xml
sur les fenêtres
Dans Jboss 7.x, nous devons ajouter
<subsystem xmlns="urn:jboss:domain:ejb3:1.2">
...
<mdb>
<resource-adapter-ref resource-adapter-name="hornetq-ra"/>
<bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
</mdb>
...
Et j'espère que ça va marcher.
J'ai eu exactement le même problème, j'ai constaté qu'il me manquait
<mdb>
<resource-adapter-ref resource-adapter-name="hornetq-ra"/>
<bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
</mdb>
sous
<subsystem xmlns="urn:jboss:domain:ejb3:1.2">
dans standalone/configuration/standalone.xml
Sur Wildfly 10 c'est (également dans la section):
<mdb>
<resource-adapter-ref resource-adapter-name="${ejb.resource-adapter-name:activemq-ra.rar}"/>
<bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
</mdb>