1 Reply Latest reply on Dec 3, 2009 4:56 AM by Zdenek Farana

    4.0.5GA - JMS not working, clustered environment

    Zdenek Farana Newbie

      Hi!
      We are having troubles with JMS in "all" instance of JBoss. We have 2 JBoss server in cluster with Apache&Mod-JK load balancer. Those 2 nodes operates as operational and standby node (so not classical load balancing). The architecture is simple: Web node comunnicates through JMS with another servers behind firewall. Before putting nodes into cluster we were using "default" configuration and JMS worked correctly.

      Now the problem, I've moved our app into "all" instance (because of clustering) and JMS has stopped working with such exception:

      2009-12-02 17:26:31,378 ERROR [STDERR] java.lang.IllegalArgumentException: object is not an instance of declaring class
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.jboss.ha.framework.interfaces.HARMIClient.invoke(HARMIClient.java:258)
       at $Proxy69.lookup(Unknown Source)
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:625)
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:587)
       at javax.naming.InitialContext.lookup(InitialContext.java:351)


      I've done some digging and found that I cannot use "QueueConnectionFactory" as JNDI name when doing the lookup, but "java:/JmsXA". When I tried, I've obtained this:

      2009-12-02 17:15:27,897 ERROR [STDERR] javax.naming.NameNotFoundException: JmsXA not bound
       at org.jnp.server.NamingServer.getBinding(NamingServer.java:529)
       at org.jnp.server.NamingServer.getBinding(NamingServer.java:537)
       at org.jnp.server.NamingServer.getObject(NamingServer.java:543)
       at org.jnp.server.NamingServer.lookup(NamingServer.java:296)
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:625)
       at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:587)
       at javax.naming.InitialContext.lookup(InitialContext.java:351)