4 Replies Latest reply on Oct 15, 2004 9:45 AM by Matteo Maria Pileggi

    Remote MDB No resource manager found for queue/Myqueue

    Neil Davis Newbie

      All,
      I built an app over 1.5 years ago to satisfy an audit need. At the time everything worked, my mdb connected to the remote queue badaboom badabing, everything was working.

      Since that time I worked on a lot of non-java/non-jboss projects, and thought that what i had done was permanently shelved, never to be heard from again. After 3 years of crusading to bring j2ee and jboss into the enterprise, I had given up out of complete and utter frustration, and abandoned all hope of getting any kind of sane application environment into here. At that time I was very familiar with how all this stuff worked, now, not so much.

      Needless to say, I've had j2ee/jboss skill rot from building a bunch of perl and php apps since then, since no one wanted to buy infrastructure, my company is skinflint cheap, java was "untested" to them and [insert incredibly stupid excuses ad nauseum here]. I had built up some skills over a 2 year period which were now going to waste. Fast forward 1.5 years. Now, it has been decided that c stovepipes are a bad idea and my company wants me to resurrect this audit application,and the prototype messaging infrastructure I built so long ago. Two weeks ago they told me I had 3 days to get it working, with no warning.

      Now that you know I am rusty, Here is the issue. I pulled my archives out, set them up on some servers, and fired all up. My remote queue connection is working, here is the trace from server startup:

      09:24:25,525 INFO [EjbModule] Deploying MessageRouterMDB
      09:24:25,696 WARN [MessageDrivenContainer] No resource manager found for queue/DMZIncoming
      09:24:37,196 ERROR [DLQHandler] Initialization failed
      javax.jms.JMSException: Error creating the dlq connection: null
       at org.jboss.ejb.plugins.jms.DLQHandler.createService(DLQHandler.java:169)
      ...(I won't fill the page with a 400 line stack trace....)...
      


      here is the mbean in jms-ds:
       <mbean code="org.jboss.jms.jndi.JMSProviderLoader"
       name="jboss.mq:service=JMSProviderLoader,name=RemoteJMSProvider,server=[remote queue server ip]">
       <attribute name="ProviderName">DevJMSProvider</attribute>
       <attribute name="ProviderUrl">jnp://[remote queue server ip]:1099</attribute>
       <attribute name="ProviderAdapterClass">org.jboss.jms.jndi.JBossMQProvider</attribute>
       <attribute name="QueueFactoryRef">UIL2XAConnectionFactory</attribute>
       <attribute name="TopicFactoryRef">UIL2XAConnectionFactory</attribute>
       </mbean>
      


      Here is the invoker proxy binding in standardjboss.xml:
       <invoker-proxy-binding>
       <name>messagerouter-message-driven-bean</name>
       <invoker-mbean>messagerouter</invoker-mbean>
       <proxy-factory>org.jboss.ejb.plugins.jms.JMSContainerInvoker</proxy-factory>
       <proxy-factory-config>
       <JMSProviderAdapterJNDI>DevJMSProvider</JMSProviderAdapterJNDI>
       <ServerSessionPoolFactoryJNDI>StdJMSPool</ServerSessionPoolFactoryJNDI>
       <MaximumSize>15</MaximumSize>
       <MaxMessages>1</MaxMessages>
       <MDBConfig>
       <ReconnectIntervalSec>10</ReconnectIntervalSec>
       <DLQConfig>
       <DestinationQueue>queue/DLQ</DestinationQueue>
       <MaxTimesRedelivered>10</MaxTimesRedelivered>
       <TimeToLive>0</TimeToLive>
       </DLQConfig>
       </MDBConfig>
       </proxy-factory-config>
       </invoker-proxy-binding>
      


      And from jboss.xml in the MDB package:
      <jboss>
       <enterprise-beans>
       <message-driven>
       <ejb-name>MessageRouterMDB</ejb-name>
       <destination-jndi-name>queue/DMZIncoming</destination-jndi-name>
       <invoker-bindings>
       <invoker>
       <invoker-proxy-binding-name>messagerouter-message-driven-bean</invoker-proxy-binding-name>
       </invoker>
       </invoker-bindings>
       </message-driven>
       </enterprise-beans>
      </jboss>
      

      I have been hammering on this issue, searching the lists, google, jguru and every other source of info I can find for 1.5 weeks, and the deadline was 1 week ago. Things are starting to get ugly. I have a PO in for jboss support, but PO's take over 6 weeks in my company.

      I am sure this is something really stupid. Here is some pertinent information:
      run.bat -c all -b [my workstation IP]
      The remote server has a queue called DMZIncoming, the local machine does too. DLQ shows up in the jmx console of both machines.


      If anyone would be kind enough to help me out with a reply, it would be greatly appreciated. I can supply any needed info, but didn't want to fill this page with stack traces, for fear of getting my post destroyed.

      thx,
      neil


        • 1. Re:  Remote MDB No resource manager found for queue/Myqueue
          Neil Davis Newbie

          Sorry I printed the wrong output for "my remote queue connection was working. It should have been:

          [JMSProviderLoader] Bound adapter to java:/DevJMSProvider
          [JMSProviderLoader] Started jboss.mq:service=JMSProviderLoader,name=RemoteJMSProvider,server=161.161.79.140
          


          • 2. Re:  Remote MDB No resource manager found for queue/Myqueue
            Neil Davis Newbie

            I'll answer my own post since I figured it out.

            Our server admin had installed latest Covalent ERS 2.4 on server since my prototyping last year. This apache 2.0 implementation has Tomcat bundled and part of this implementation was sitting on one of the ports that JMS/Jboss uses.

            Strangely enough no error messages showed when the jboss was started on this server running Covalent. I guess it is a JMS binding that happens when the message queue is accessed, fired up through a jboss message on 1099 or something.

            I disabled the java stuff on the Covalent server and started jboss-3.2.3, using jboss's tomcat instead of covalent's, and everything started working.

            So if you see a "No Resource Manager found for xxx" message, connected with some JBoss network service, it may be due to a port binding that JBoss uses, taken by something else. My code still worked fine, and I wasn't quite as rusty at configuring jboss as I had thought.

            This port did not show up when I probed the ports so I am still not sure which one it was. This may be due to the fact that covalent is a type of "secure" server so may not answer port probes because of some security restriction.

            I apologize for the space I wasted with my original post.

            thx,
            neil

            • 3. Re:  Remote MDB No resource manager found for queue/Myqueue
              Matteo Maria Pileggi Newbie

              Hi all!
              npdavis, I've your same problem...
              If you find a solution, please, post it here


              Regards,
              Matthew

              • 4. Re:  Remote MDB No resource manager found for queue/Myqueue
                Matteo Maria Pileggi Newbie

                I post also my stacktrace:

                15:44:23,846 ERROR [DLQHandler] Initialization failed DLQHandler
                javax.jms.JMSException: Error creating the dlq connection: null
                 at org.jboss.ejb.plugins.jms.DLQHandler.createService(DLQHandler.java:17
                1)
                 at org.jboss.system.ServiceMBeanSupport.jbossInternalCreate(ServiceMBean
                Support.java:237)
                 at org.jboss.system.ServiceMBeanSupport.create(ServiceMBeanSupport.java:
                164)
                 at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerCreate(JMSContaine
                rInvoker.java:542)
                 at org.jboss.ejb.plugins.jms.JMSContainerInvoker.startService(JMSContain
                erInvoker.java:764)
                 at org.jboss.ejb.plugins.jms.JMSContainerInvoker$ExceptionListenerImpl.o
                nException(JMSContainerInvoker.java:1267)
                 at org.jboss.ejb.plugins.jms.JMSContainerInvoker$1.run(JMSContainerInvok
                er.java:776)
                15:44:28,987 INFO [JMSContainerInvoker] Reconnected to JMS provider
                15:44:28,987 WARN [JMSContainerInvoker] JMS provider failure detected:
                javax.jms.JMSException: Error creating the dlq connection: null
                 at org.jboss.ejb.plugins.jms.DLQHandler.createService(DLQHandler.java:17
                1)
                 at org.jboss.system.ServiceMBeanSupport.jbossInternalCreate(ServiceMBean
                Support.java:237)
                 at org.jboss.system.ServiceMBeanSupport.create(ServiceMBeanSupport.java:
                164)
                 at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerCreate(JMSContaine
                rInvoker.java:542)
                 at org.jboss.ejb.plugins.jms.JMSContainerInvoker.startService(JMSContain
                erInvoker.java:764)
                 at org.jboss.ejb.plugins.jms.JMSContainerInvoker$ExceptionListenerImpl.o
                nException(JMSContainerInvoker.java:1267)
                 at org.jboss.ejb.plugins.jms.JMSContainerInvoker$1.run(JMSContainerInvok
                er.java:776)
                15:44:28,987 INFO [JMSContainerInvoker] Trying to reconnect to JMS provider
                
                


                Matthew