Uploaded image for project: 'Application Server 3  4  5 and 6'
  1. Application Server 3 4 5 and 6
  2. JBAS-8895

Can't connect to JMS before server has started up completely

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 6.1.0
    • 6.0.0.Final
    • JMS (HornetQ)
    • None
    • Hide

      The description explains how to reproduce this issue with the attached jmstest.war

      Show
      The description explains how to reproduce this issue with the attached jmstest.war

    Description

      It seems that with JBoss AS 6.0.0.Final I can't connect to JMS before the application server itself has started up completely. I'm using the InitialContext approach as I can't use Message Driven Beans in the project.

      I created a JMS Topic in [jboss-home]/server/default/deploy/hornetq/hornetq-jms.xml as follows:

      <topic name="MyTopic">
      <entry name="/topic/test"/>
      </topic>

      Next I'm trying to connect to JMS from my JMSServlet's init(ServletConfig) method, but that seems to fail when executing the JMS detection on the original thread (that is the thread supplied by the application server) as follows:

      Unable to validate user: null for check type CREATE_NON_DURABLE_QUEUE for address jms.topic.MyTopic

      I'd prefer not having to specify the user/password, but even if I do it fails in a similar fashion:

      Unable to validate user: guest for check type CREATE_NON_DURABLE_QUEUE for address jms.topic.MyTopic

      When I do the detection of JMS on a seperate thread it eventually seems to work, as long as the application server started up completely. However, timing is then a bit undeterministic. When running this test on earlier versions of JBoss AS, namely 5 and 4, or other application servers the detection seems to succeed on the first try on the original thread.

      Why does JBoss AS 6.0.0.Final behave differently? Is there some configuration I am missing? Is this a potential bug?

      I'll attach my JMS Test application which tries to connect to JMS using 6 different strategies:

      • On original thread
      • On original thread after sleep
      • On spawned thread with await/signal
      • On spawned thread with await/signal after sleep
      • On spawned thread without await/signal
      • On spawned thread without await/signal after sleep

      The source is included in the jmstest.war file.

      Attachments

        1. jmstest.war
          13 kB
          Jack van Ooststroom

        Issue Links

          Activity

            People

              jaikiran Jaikiran Pai (Inactive)
              oosie Jack van Ooststroom (Inactive)
              Votes:
              4 Vote for this issue
              Watchers:
              13 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: