0 Replies Latest reply on Oct 30, 2008 11:02 AM by Vincent GIguère

    JMS Failover to Master node : SpyJMSException: Cannot authen

    Vincent GIguère Newbie

      Hi,

      I have an application using JMS in a clustered JBOSS environment.

      My JMS service and queues are deployed as a singleton (deploy-hasingleton/jms/***) on every node (3) in the cluster.

      PLEASE NOTE : Each node in the server has been tested alone and successfully deployed the JMS service (as the master node).

      My problem is:

      When I launch all nodes in my cluster, everything works fine, but if I kill the master node, the new master node is unable to provide the JMS service.

      I am getting the following error:

      org.jboss.mq.SpyJMSException: Cannot authenticate user; - nested throwable: (java.net.ConnectException: Connection refused)
       at org.jboss.mq.SpyJMSException.getAsJMSException(SpyJMSException.java:72)
       at org.jboss.mq.SpyJMSException.rethrowAsJMSException(SpyJMSException.java:57)
       at org.jboss.mq.Connection.authenticate(Connection.java:1071)
       at org.jboss.mq.Connection.<init>(Connection.java:252)
       at org.jboss.mq.Connection.<init>(Connection.java:323)
       at org.jboss.mq.SpyConnection.<init>(SpyConnection.java:116)
       at org.jboss.mq.SpyConnectionFactory.internalCreateConnection(SpyConnectionFactory.java:137)
       at org.jboss.mq.SpyConnectionFactory.createConnection(SpyConnectionFactory.java:98)
       at org.springframework.jms.support.JmsAccessor.createConnection(JmsAccessor.java:188)
       at org.springframework.jms.listener.AbstractJmsListeningContainer.createSharedConnection(AbstractJmsListeningContainer.java:209)
       at org.springframework.jms.listener.AbstractJmsListeningContainer.refreshSharedConnection(AbstractJmsListeningContainer.java:197)
       at org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageListenerContainer.java:700)
       at org.springframework.jms.listener.DefaultMessageListenerContainer.recoverAfterListenerSetupFailure(DefaultMessageListenerContainer.java:682)
       at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:834)
       at java.lang.Thread.run(Thread.java:619)
      Caused by: java.net.ConnectException: Connection refused
       at java.net.PlainSocketImpl.socketConnect(Native Method)
       at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
       at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
       at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
       at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
       at java.net.Socket.connect(Socket.java:519)
       at java.net.Socket.connect(Socket.java:469)
       at java.net.Socket.<init>(Socket.java:366)
       at java.net.Socket.<init>(Socket.java:180)
       at javax.net.DefaultSocketFactory.createSocket(SocketFactory.java:196)
       at org.jboss.mq.il.uil2.UILServerIL.createConnection(UILServerIL.java:497)
       at org.jboss.mq.il.uil2.UILServerIL.getSocketMgr(UILServerIL.java:390)
       at org.jboss.mq.il.uil2.UILServerIL.authenticate(UILServerIL.java:277)
       at org.jboss.mq.Connection.authenticate(Connection.java:1067)
       ... 12 more
      


      Does anyone have an idea why JMS service is not deployed on the new master node when the cluster looses its master, even though each node can individually act as the master node?

      Thanks in advance for your help.

      Vincent Giguere

      Environment information:
      Jboss 4.2.3
      Java 6 update 10
      CENTOS 5.2