1 Reply Latest reply on Oct 19, 2010 2:50 AM by ataylor

    HornetQ standalone macosx with Spring

    khookguy12

      I'm trying to implement unit tests (TestNG) with HornetQ standalone with Spring, and have followed various tutorials.

      (e.g., http://www.javacodegeeks.com/2010/06/spring-3-hornetq-21-integration.html)

       

      I cannot get org.jnp.server.NamingBeanImpl to start.  Gives me:

       

      Caused by: javax.naming.CommunicationException: Failed to connect to server /127.0.0.1:1099 [Root exception is javax.naming.ServiceUnavailableException: Failed to connect to server /127.0.0.1:1099 [Root exception is java.net.ConnectException: Connection refused]]

       

      However, if JBoss is running in a separate JVM, then I have no problems starting NamingBeanImpl

       

      I have this in Spring:

       

      <bean name="namingServerImpl" class="org.jnp.server.NamingBeanImpl"
              init-method="start" destroy-method="stop"/>

       

      I've also tried a basic test like this:

       

      NamingBeanImpl jnpServer = new NamingBeanImpl();

      jnpServer.start();

       

      Again, when JBoss is running elsewhere, it works.  Otherwise, I get the "Connection Refused" exception.

       

      JNDI is set up with jndi.properties -

       

      java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
      java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
      java.naming.provider.url=jnp://127.0.0.1:1099

       

      I've also tried starting the rmiregistry in a separate JVM.  (Since I seem to recall that sometimes on OS X, this is necessary).  Then the NamingBeanImpl hangs.  Do I also need to start something else on port 1098?

       

      Any help would be much appreciated!!

        • 1. Re: HornetQ standalone macosx with Spring
          ataylor

          The naming service is not part of HornetQ, we just use it as our naming service. However, iirc if the java.naming.provider.url is set then when you start it it tries to connect rather than just starting the naming server, this should only be set for clients. The JNDI guys would no better