3 Replies Latest reply on Aug 23, 2006 1:20 PM by Brian Stansberry

    JBOSS 4.0.4 GA clustering problem

    Neil O'Connor Newbie

      I've installed JBOSS 4.0.4 GA using the "ejb3 clustered" option. The server runs on two machines, and the cluster seems to be created successfully (membership changes are visible in the server output).

      I'm trying to deploy a simple stateless session bean to the cluster. It runs locally. The class is annotated with the "@Cluster" tag. When I deploy it I only see the deployment on the local machine. Nothing happens on the other member of the cluster. Should I see it being deployed there also?

      I also have created a test client which calls a method on the session bean. I expected this to fallover to the other member of the cluster when the server is stopped on the local machine, but instead I get an exception (see below).

      One thing I've noticed is that there is no "farm" folder in this version. I'm deploying the session bean to the standard deploy folder. Should I be creating this folder or configuring something within JBOSS?

      Could the fallover problem be related to the RetryInterceptor. I've read somthing about this and my configuration is the default SingleRetryInterceptor. Could the problem be related to this?

      Thanks,
      Neil


      Exception in thread "main" java.lang.RuntimeException: cluster invocation failed, last exception was:
      at org.jboss.aspects.remoting.ClusterChooserInterceptor.invoke(ClusterChooserInterceptor.java:129)
      at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
      at org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:61)
      at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
      at org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:55)
      at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
      at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:65)
      at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
      at org.jboss.ejb3.stateless.StatelessClusteredProxy.invoke(StatelessClusteredProxy.java:100)
      at $Proxy0.sayHello(Unknown Source)
      at ie.fbn.ejb.test.TestForum.main(TestForum.java:40)
      Caused by: org.jboss.remoting.CannotConnectException: Can not get connection to server. Problem establishing socket connection.
      at org.jboss.remoting.transport.socket.SocketClientInvoker.transport(SocketClientInvoker.java:267)
      at org.jboss.remoting.RemoteClientInvoker.invoke(RemoteClientInvoker.java:143)
      at org.jboss.remoting.Client.invoke(Client.java:525)
      at org.jboss.remoting.Client.invoke(Client.java:488)
      at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:55)
      at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
      at org.jboss.aspects.remoting.ClusterChooserInterceptor.invoke(ClusterChooserInterceptor.java:74)
      ... 10 more
      Caused by: java.net.ConnectException: Connection refused: connect
      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:507)
      at java.net.Socket.connect(Socket.java:457)
      at java.net.Socket.(Socket.java:365)
      at java.net.Socket.(Socket.java:178)
      at org.jboss.remoting.transport.socket.SocketClientInvoker.createSocket(SocketClientInvoker.java:535)
      at org.jboss.remoting.transport.socket.SocketClientInvoker.getConnection(SocketClientInvoker.java:471)
      at org.jboss.remoting.transport.socket.SocketClientInvoker.transport(SocketClientInvoker.java:263)
      ... 16 more