Details
-
Bug
-
Resolution: Done
-
Major
-
10.0.0.CR5
-
None
Description
When a binding to a remote Artemis Topic/ConnectionFactory is created, JNDI view fails with a ClassNotFoundException. Both servers are running the "full" profile.
I attach my domain.xml for reference porpuses. No application needs to be deployed.
Full operation result:
[domain@localhost:9990 /] /host=master/server=app-ins01/subsystem=naming:jndi-view()
{
"outcome" => "failed",
"result" => {"java: contexts" => {
"java:" => {
"ConnectionFactory" =>
,
"JmsXA" =>
,
"TransactionManager" =>
"jms" => {
"class-name" => "javax.naming.Context",
"children" => {"queue" => {
"class-name" => "javax.naming.Context",
"children" => {
"DLQ" => { "class-name" => "org.apache.activemq.artemis.jms.client.ActiveMQQueue", "value" => "ActiveMQQueue[DLQ]" },
"ExpiryQueue" => { "class-name" => "org.apache.activemq.artemis.jms.client.ActiveMQQueue", "value" => "ActiveMQQueue[ExpiryQueue]" }
}
}}
},
"jboss" => { "class-name" => "javax.naming.Context", "value" => "org.jboss.as.naming.WritableServiceBasedNamingStore@d2c52f" },
"global" => { "class-name" => "javax.naming.Context", "value" => "org.jboss.as.naming.WritableServiceBasedNamingStore@932e80" },
"ejb" => {
"class-name" => "javax.naming.Context",
"children" => {"mgmt" => {
"class-name" => "javax.naming.Context",
"children" => {"MEJB" => {
"class-name" => "javax.management.j2ee.ManagementHome",
"value" => "Proxy for remote EJB EJBHomeLocator for \"jsr-77/jsr-77/EJB\", view is interface javax.management.j2ee.ManagementHome, affinity is None"
}}
}}
}
},
"java:jboss" => {
"ORB" => { "class-name" => "com.sun.corba.se.impl.orb.ORBImpl", "value" => "com.sun.corba.se.impl.orb.ORBImpl@1306d15" },
"TransactionManager" => { "class-name" => "com.arjuna.ats.jbossatx.jta.TransactionManagerDelegate", "value" => "com.arjuna.ats.jbossatx.jta.TransactionManagerDelegate@27b3c7" }
,
"TransactionSynchronizationRegistry" =>
,
"UserTransaction" =>
,
"corbanaming" =>
,
"irpoa" =>
,
"jaas" =>
,
"poa" =>
,
"ee" => {
"class-name" => "javax.naming.Context",
"children" => {"concurrency" => {
"class-name" => "javax.naming.Context",
"children" => {
"scheduler" => {
"class-name" => "javax.naming.Context",
"children" => {"default" => {
"class-name" => "java.lang.Object",
"value" => "?"
}}
},
"factory" => {
"class-name" => "javax.naming.Context",
"children" => {"default" => {
"class-name" => "java.lang.Object",
"value" => "?"
}}
},
"executor" => {
"class-name" => "javax.naming.Context",
"children" => {"default" => {
"class-name" => "java.lang.Object",
"value" => "?"
}}
},
"context" => {
"class-name" => "javax.naming.Context",
"children" => {"default" => {
"class-name" => "java.lang.Object",
"value" => "?"
}}
}
}
}}
},
"infinispan" => {
"class-name" => "javax.naming.Context",
"children" => {"container" => {
"class-name" => "javax.naming.Context",
"children" => {
"ejb" =>
,
"hibernate" =>
,
"server" =>
,
"web" =>
}
}}
},
"datasources" => {
"class-name" => "javax.naming.Context",
"children" => {"ExampleDS" => {
"class-name" => "org.jboss.as.connector.subsystems.datasources.WildFlyDataSource",
"value" => "org.jboss.as.connector.subsystems.datasources.WildFlyDataSource@c79ae8"
}}
},
"mail" => {
"class-name" => "javax.naming.Context",
"children" => {"Default" => {
"class-name" => "javax.mail.Session",
"value" => "javax.mail.Session@1e9f277"
}}
},
"clustering" => {
"class-name" => "javax.naming.Context",
"children" => {"registry" => {
"class-name" => "javax.naming.Context",
"children" => {"ejb" => {
"class-name" => "javax.naming.Context",
"children" => {"client-mappings" => {
"class-name" => "org.wildfly.clustering.server.registry.CacheRegistryFactory",
"value" => "org.wildfly.clustering.server.registry.CacheRegistryFactory@12ac291"
}}
}}
}}
}
},
"java:jboss/exported" => {"jms" => {
"class-name" => "javax.naming.Context",
"children" => {"RemoteConnectionFactory" => {
"class-name" => "org.apache.activemq.artemis.jms.client.ActiveMQJMSConnectionFactory",
"value" => "ActiveMQConnectionFactory [serverLocator=ServerLocatorImpl [initialConnectors=[TransportConfiguration(name=http-connector, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?httpUpgradeEnabled=true&httpPpgradeEndpoint=http-acceptor&port=8190&host=127-0-0-1], discoveryGroupConfiguration=null], clientID=null, consumerWindowSize = 1048576, dupsOKBatchSize=1048576, transactionBatchSize=1048576, readOnly=false]"
}}
}},
"java:global" => undefined
}},
"failure-description" => "WFLYCTL0158: Operation handler failed: java.lang.RuntimeException: org.jboss.naming.remote.protocol.NamingIOException: Failed to lookup [Root exception is java.io.IOException: java.lang.ClassNotFoundException: org.apache.activemq.artemis.jms.client.ActiveMQJMSConnectionFactory from [Module \"org.jboss.as.naming:main\" from local module loader @130015a (finder: local module finder @9f0666 (roots: c:\\wildfly-10.0.0.CR5\\modules,c:\\wildfly-10.0.0.CR5\\modules\\system\\layers\\base))]]",
"rolled-back" => true
}
Injection of the resources via @Resource in an application works as expected. I found this same problem where manually doing the remote lookup from application code, which I resolved adding a dependency to Artemis module in META-INF.
Attachments
Issue Links
- causes
-
HAL-1028 No message shown on JNDI view fails
- Resolved