JMS destination lookup error on JBOSS EAP 8
07:29 12 Jan 2026

I have a queue - TestQueue created on JBOSS EAP 8 and my application (EAR) has a MDB which publishes messages to this queue.

standalone.xml


    
        
        
        
        
        
        
    

Below is the class where I am trying to lookup all queues created on JBOSS EAP 8

ApplicationStartup.java

@Singleton
@Startup
public class ApplicationStartup {

    @PostConstruct
    public void init() {
        try {
            Logger.info("ApplicationStartup: LOOOK UP JMS QUEUES/TOPICS");

            // 1. Set up JNDI properties for connecting to JBoss/WildFly
            Properties props = new Properties();
            props.put(Context.INITIAL_CONTEXT_FACTORY, "org.wildfly.naming.client.WildFlyInitialContextFactory");
            props.put(Context.PROVIDER_URL, "http-remoting://localhost:8080"); 

            // 2. Create InitialContext
            Context initialContext = new InitialContext(props);

            Context destinationsContext = (Context) initialContext.lookup("jms");
            Enumeration list = destinationsContext.list("");

            while (list.hasMoreElements()) {
                NameClassPair nc = list.nextElement();
                Object obj = destinationsContext.lookup(nc.getName());

                if (obj instanceof Queue) {
                    System.out.println("Queue Found: " + nc.getName());
                } else if (obj instanceof Topic) {
                    System.out.println("Topic Found: " + nc.getName());
                }
            }
        } catch (Exception e) {
            Logger.error("ApplicationStartup: Error during JMS startup", e);
            e.printStackTrace();
        }
    }
}

jboss-deployment-descriptor.xml



    
        
            
        
        
            
            
        
    

I have a EJB and Web module in a EAR deployed to JBOSS 8. I have added jboss-deployment-descriptor.xml in META-INF folders of EJB and EAR modules and WEB-INF folder of Web module but I am getting below error

Caused by: java.lang.RuntimeException: javax.naming.NamingException: Failed to lookup [Root exception is java.lang.ClassNotFoundException: org.apache.activemq.artemis.jms.client.ActiveMQJMSConnectionFactory from [Module "deployment.deploy.ear.testweb-1.0.0.war" from Service Module Loader]]
        at deployment.deploy.ear.testweb-1.0.0.war//com.Karthik.test.jms.startup.ApplicationStartup.init(ApplicationStartup.java:88)
        at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)
        at org.jboss.as.ee@8.0.7.GA-redhat-00002//org.jboss.as.ee.component.ManagedReferenceLifecycleMethodInterceptor.processInvocation(ManagedReferenceLifecycleMethodInterceptor.java:96)
        at org.jboss.invocation@2.0.0.Final-redhat-00001//org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
        at org.jboss.invocation@2.0.0.Final-redhat-00001//org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
        at org.jboss.as.weld.common@8.0.7.GA-redhat-00002//org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.delegateInterception(Jsr299BindingsInterceptor.java:79)
        at org.jboss.as.weld.common@8.0.7.GA-redhat-00002//org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doLifecycleInterception(Jsr299BindingsInterceptor.java:126)
        at org.jboss.as.weld.common@8.0.7.GA-redhat-00002//org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:112)
        at org.jboss.invocation@2.0.0.Final-redhat-00001//org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
        at org.jboss.invocation@2.0.0.Final-redhat-00001//org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
        at org.jboss.weld.core@5.1.2.Final-redhat-00001//org.jboss.weld.module.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:87)
        at org.jboss.as.weld.common@8.0.7.GA-redhat-00002//org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:89)
        at org.jboss.invocation@2.0.0.Final-redhat-00001//org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
        at org.jboss.as.weld@8.0.7.GA-redhat-00002//org.jboss.as.weld.injection.WeldInjectionInterceptor.processInvocation(WeldInjectionInterceptor.java:53)
        at org.jboss.invocation@2.0.0.Final-redhat-00001//org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
        at org.jboss.as.ee@8.0.7.GA-redhat-00002//org.jboss.as.ee.component.ManagedReferenceFieldInjectionInterceptorFactory$ManagedReferenceFieldInjectionInterceptor.processInvocation(ManagedReferenceFieldInjectionInterceptorFactory.java:112)
        at org.jboss.invocation@2.0.0.Final-redhat-00001//org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
        at org.jboss.as.ee@8.0.7.GA-redhat-00002//org.jboss.as.ee.component.AroundConstructInterceptorFactory$1.processInvocation(AroundConstructInterceptorFactory.java:28)
        at org.jboss.invocation@2.0.0.Final-redhat-00001//org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
        at org.jboss.as.weld@8.0.7.GA-redhat-00002//org.jboss.as.weld.injection.WeldInterceptorInjectionInterceptor.processInvocation(WeldInterceptorInjectionInterceptor.java:56)
        at org.jboss.invocation@2.0.0.Final-redhat-00001//org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
        at org.jboss.as.weld@8.0.7.GA-redhat-00002//org.jboss.as.weld.interceptors.Jsr299BindingsCreateInterceptor.processInvocation(Jsr299BindingsCreateInterceptor.java:111)
        at org.jboss.invocation@2.0.0.Final-redhat-00001//org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
        at org.jboss.as.ee@8.0.7.GA-redhat-00002//org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)
        at org.jboss.invocation@2.0.0.Final-redhat-00001//org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
        at org.jboss.as.ejb3@8.0.7.GA-redhat-00002//org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:254)
        ... 28 more
Caused by: javax.naming.NamingException: Failed to lookup [Root exception is java.lang.ClassNotFoundException: org.apache.activemq.artemis.jms.client.ActiveMQJMSConnectionFactory from [Module "deployment.deploy.ear.testweb-1.0.0.war" from Service Module Loader]]
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.util.NamingUtils.namingException(NamingUtils.java:171)
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.remote.RemoteClientTransport.lookup(RemoteClientTransport.java:291)
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.remote.RemoteContext.lambda$lookupNative$0(RemoteContext.java:190)
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.NamingProvider.performExceptionAction(NamingProvider.java:222)
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.remote.RemoteContext.performWithRetry(RemoteContext.java:100)
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.remote.RemoteContext.lookupNative(RemoteContext.java:188)
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.AbstractFederatingContext.lookup(AbstractFederatingContext.java:74)
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.store.RelativeFederatingContext.lookupNative(RelativeFederatingContext.java:58)
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.AbstractFederatingContext.lookup(AbstractFederatingContext.java:74)
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.AbstractFederatingContext.lookup(AbstractFederatingContext.java:60)
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.AbstractFederatingContext.lookup(AbstractFederatingContext.java:50)
        at deployment.deploy.ear.testweb-1.0.0.war//com.Karthik.test.jms.startup.ApplicationStartup.init(ApplicationStartup.java:70)
        ... 54 more
Caused by: java.lang.ClassNotFoundException: org.apache.activemq.artemis.jms.client.ActiveMQJMSConnectionFactory from [Module "deployment.deploy.ear.testweb-1.0.0.war" from Service Module Loader]
        at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:200)
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:408)
        at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:396)
        at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:115)
        at java.base/java.lang.Class.forName0(Native Method)
        at java.base/java.lang.Class.forName(Class.java:534)
        at java.base/java.lang.Class.forName(Class.java:513)
        at org.jboss.marshalling@2.1.6.Final-redhat-00001//org.jboss.marshalling.AbstractClassResolver.loadClass(AbstractClassResolver.java:129)
        at org.jboss.marshalling@2.1.6.Final-redhat-00001//org.jboss.marshalling.AbstractClassResolver.resolveClass(AbstractClassResolver.java:110)
        at org.jboss.marshalling.river@2.1.6.Final-redhat-00001//org.jboss.marshalling.river.RiverUnmarshaller.doReadClassDescriptor(RiverUnmarshaller.java:1284)
        at org.jboss.marshalling.river@2.1.6.Final-redhat-00001//org.jboss.marshalling.river.RiverUnmarshaller.doReadNewObject(RiverUnmarshaller.java:1560)
        at org.jboss.marshalling.river@2.1.6.Final-redhat-00001//org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:441)
        at org.jboss.marshalling.river@2.1.6.Final-redhat-00001//org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:373)
        at org.jboss.marshalling@2.1.6.Final-redhat-00001//org.jboss.marshalling.AbstractObjectInput.readObject(AbstractObjectInput.java:41)
        at org.wildfly.naming-client@2.0.1.Final-redhat-00001//org.wildfly.naming.client.remote.RemoteClientTransport.lookup(RemoteClientTransport.java:275)
        ... 64 more
jboss ejb activemq-artemis java-21