[
https://issues.jboss.org/browse/WFLY-4682?page=com.atlassian.jira.plugin....
]
Jeff Mesnil edited comment on WFLY-4682 at 7/31/15 5:08 AM:
------------------------------------------------------------
There are 3 ways to make sure that the javax.jms.api is added to deployments.
1. add an empty messaging-activemq subsystem (if the subsystem is empty, there will be no
running Artemis broker)
2. add the javax.jms.api dependency to the Websphere MQ8 deployment. This would mean to
update its MANIFEST.MF to add the Dependencies entry.
3. add the javax.jms.api to the global modules
was (Author: jmesnil):
There are 2 ways to make sure that the javax.jms.api is added to deployments.
1. add an empty messaging-activemq subsystem (if the subsystem is empty, there will be no
running Artemis broker)
2. add the javax.jms.api dependency to the Websphere MQ8 deployment. This would mean to
update its MANIFEST.MF to add the Dependencies entry.
standalone-full.xml does not load javax.jms.api for deployment which
is using Websphere MQ 8
--------------------------------------------------------------------------------------------
Key: WFLY-4682
URL:
https://issues.jboss.org/browse/WFLY-4682
Project: WildFly
Issue Type: Bug
Components: Class Loading, MSC
Affects Versions: 9.0.0.CR1, 10.0.0.Alpha1
Reporter: Miroslav Novak
Assignee: Bartosz Baranowski
Labels: duplicate
Attachments: standalone-full.xml
Deployment (Servlet, EJB, MDB) which is using Websphere MQ 8 resource adapter to
send/receive messages from external Websphere MQ 8 instance is not loading
"javax.jms.api" module. Deployment is using JMS api.
This is change in behaviour against previous versions EAP 6/Widlfly 9.
There is no error during deploy. Failures occur in the moment when deployment for example
servlet is called. Following error is logged in EAP 7.0.0.DR2 log:
{code}
08:57:24,835 INFO [org.jboss.as.server] (DeploymentScanner-threads - 1) WFLYSRV0016:
Replaced deployment "servlet.war" with deployment "servlet.war"
08:57:24,838 INFO [org.jboss.as.repository] (DeploymentScanner-threads - 1) WFLYDR0002:
Content removed from location
/home/mnovak/projects/eap-tests-wsmq/ibm-mq-testsuite/src/test/config/ibm8/install/jboss-eap-7.0/standalone/data/content/62/931347d12b65c80cd2201372be52f0494e361a/content
08:57:25,794 ERROR [io.undertow.request] (default task-2) UT005023: Exception handling
request to /CleaningServlet/CleaningServlet: java.lang.NoClassDefFoundError:
javax/jms/Message
at org.jboss.as.test.ibm.mq.servlet.CleaningServlet.doGet(CleaningServlet.java:50)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:86)
at
io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
at
io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
at
org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at
io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131)
at
io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at
io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
at
io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
at
io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:58)
at
io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:72)
at
io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50)
at
io.undertow.security.handlers.SecurityInitialHandler.handleRequest(SecurityInitialHandler.java:76)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at
org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at
io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:274)
at
io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:253)
at
io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:80)
at
io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:172)
at io.undertow.server.Connectors.executeRootHandler(Connectors.java:199)
at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:774)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ClassNotFoundException: javax.jms.Message from [Module
"deployment.servlet.war:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:205)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:455)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:404)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:385)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:130)
... 30 more
{code}
Websphere MQ resource adapter is rar archive in deployments directory. It's not
configured in module. Only way to force loading of "javax.jms.api" for
deployment is to add Dependecies: javax.jms.api to MANIFEST.MF or add it to
global-modules. This negatively affects usability.
Can be javax.jms.api loaded for deployment by default for "full" and
"full-ha" profile?
I'm adding standalone-full.xml with configuration for EAP 7.0.0.DR2.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)