2 Replies Latest reply on Sep 1, 2009 4:13 AM by datoga

    loader-repository issue

      Hello, I'm using JBOSS AS 5.1.0 and I'm deploying an EAR.

      When I deploy without jboss-app.xml all works fine.

      I need to configure some jboss properties but when I include this descriptor in the EAR some problems appear, for example this weird error:

      09:31:28,171 INFO [EjbModule] Deploying ReceptorSubscripciones
      09:31:28,171 WARN [EjbModule] EJB configured to bypass security. Please verify if this is intended. Bean=ReceptorSubscripciones Deployment=vfszip:/C:/jboss-5.1.0.GA/server/default/deploy/DTX2-1.0-RC2.ear/PullClienteMDEjb-1.0-RC2.jar/
      09:31:28,203 WARN [JmsActivation] Failure in jms activation org.jboss.resource.adapter.jms.inflow.JmsActivationSpec@39de86(ra=org.jboss.resource.adapter.jms.JmsResourceAdapter@16ffdba destination=jms/pullcliente destinationType=javax.jms.Queue tx=true durable=false reconnect=10 provider=java:/DefaultJMSProvider user=null maxMessages=1 minSession=1 maxSession=15 keepAlive=60000 useDLQ=true DLQHandler=org.jboss.resource.adapter.jms.inflow.dlq.GenericDLQHandler DLQJndiName=queue/DLQ DLQUser=null DLQMaxResent=5)
      java.lang.IllegalArgumentException: interface javax.jms.MessageListener is not visible from class loader
       at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353)
       at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
       at org.jboss.proxy.GenericProxyFactory.createProxy(GenericProxyFactory.java:152)
       at org.jboss.ejb.plugins.inflow.JBossMessageEndpointFactory.createEndpoint(JBossMessageEndpointFactory.java:159)
       at org.jboss.resource.adapter.jms.inflow.JmsServerSession.setup(JmsServerSession.java:127)
       at org.jboss.resource.adapter.jms.inflow.JmsServerSessionPool.setupSessions(JmsServerSessionPool.java:197)
       at org.jboss.resource.adapter.jms.inflow.JmsServerSessionPool.start(JmsServerSessionPool.java:88)
       at org.jboss.resource.adapter.jms.inflow.JmsActivation.setupSessionPool(JmsActivation.java:656)
       at org.jboss.resource.adapter.jms.inflow.JmsActivation.setup(JmsActivation.java:359)
       at org.jboss.resource.adapter.jms.inflow.JmsActivation$SetupActivation.run(JmsActivation.java:729)
       at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:205)
       at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260)
       at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
       at java.lang.Thread.run(Thread.java:595)


      And after:

      09:31:38,140 INFO [JmsActivation] Attempting to reconnect org.jboss.resource.adapter.jms.inflow.JmsActivationSpec@9cd6c4(ra=org.jboss.resource.adapter.jms.JmsResourceAdapter@16ffdba destination=jms/pullcliente destinationType=javax.jms.Queue tx=true durable=false reconnect=10 provider=java:/DefaultJMSProvider user=null maxMessages=1 minSession=1 maxSession=15 keepAlive=60000 useDLQ=true DLQHandler=org.jboss.resource.adapter.jms.inflow.dlq.GenericDLQHandler DLQJndiName=queue/DLQ DLQUser=null DLQMaxResent=5)
      09:31:38,140 ERROR [JmsActivation] Unable to reconnect org.jboss.resource.adapter.jms.inflow.JmsActivationSpec@1dada88(ra=org.jboss.resource.adapter.jms.JmsResourceAdapter@16ffdba destination=jms/pullcliente destinationType=javax.jms.Queue tx=true durable=false reconnect=10 provider=java:/DefaultJMSProvider user=null maxMessages=1 minSession=1 maxSession=15 keepAlive=60000 useDLQ=true DLQHandler=org.jboss.resource.adapter.jms.inflow.dlq.GenericDLQHandler DLQJndiName=queue/DLQ DLQUser=null DLQMaxResent=5)
      java.lang.IllegalArgumentException: interface javax.jms.MessageListener is not visible from class loader
       at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353)
       at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
       at org.jboss.proxy.GenericProxyFactory.createProxy(GenericProxyFactory.java:152)
       at org.jboss.ejb.plugins.inflow.JBossMessageEndpointFactory.createEndpoint(JBossMessageEndpointFactory.java:159)
      .... (the same as above)


      This is my jboss-app.xml:

      <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE jboss-app PUBLIC
       "-//JBoss//DTD Java EE Application 5.0//EN"
       "http://www.jboss.org/j2ee/dtd/jboss-app_5_0.dtd">
      <jboss-app>
       <loader-repository>es.uv.lisitt.dtx2:loader=DTX2-1.0-RC2.ear</loader-repository>
      </jboss-app>


      Is my loader-repository right?
      The EAR name is DTX2-1.0-RC2.ear and all packages begin with es.uv.lisitt.dtx2.

      Thanks in advance,
      David

        • 1. Re: loader-repository issue
          jaikiran

          Are you packaging and jar files containing javax.jms.* classes in your application? If yes, then remove those jars from the application packaging. Also do not package any JBoss specific jar files in your application.

          • 2. Re: loader-repository issue

            Yes, I found some transitive dependencies with geronimo specs (javax.jms.*), this problem is fixed now!

            Thank you very much