[jboss-user] [Clustering/JBoss] - Re: Some Issues with clustering on JBoss 4.0.4 and EJB stub

ablevine1 do-not-reply at jboss.com
Mon Sep 25 15:45:12 EDT 2006


Since I have the same ejb's in two different clusters, I am using the jboss.xml approach with 
<clustered>true</clustered> 
for each of my sesion beans.
see: http://www.jboss.com/index.html?module=bb&op=viewtopic&t=91189

The jboss failover code does not seem to be working though, and I get the following exception stack trace when I shutdown one of the servers in the cluster that the client had been making calls to:

  | java.lang.reflect.UndeclaredThrowableException
  |         at $Proxy1.loadObject(Unknown Source)
  |         at com.squaretrade.managed.AbstractManager.loadObject(AbstractManager.java:37)
  |         at com.squaretrade.person.PersonManager.loadPerson(PersonManager.java:52)
  |         at com.squaretrade.person.RecurringPersonLoader.main(RecurringPersonLoader.java:44)
  | Caused by: org.jboss.aop.NotFoundInDispatcherException: Object with oid: jboss.j2ee:ear=batch.ear,jar=beans-batch.jar,name=PersonManagerSessionImpl,service=EJB3 was not found in the Dispatcher
  |         at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:85)
  |         at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
  |         at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:828)
  |         at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:681)
  |         at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:358)
  |         at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:412)
  |         at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:239)
  |         at org.jboss.remoting.RemoteClientInvoker.invoke(RemoteClientInvoker.java:190)
  |         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.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.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:102)
  |         ... 4 more
  | 

note that loadObject is the session bean call. and that is where it is failing. As soon as I create a new InitialContext using port 1100 and then lookup the session bean again, the call goes through. Although, I thought that the stub was supposed to do this for me.


here is the entry in jboss.xml for one of my sesion beans:


  | <session>
  |     <ejb-name>PersonManagerSessionImpl</ejb-name>
  |     <clustered>true</clustered>
  |         <cluster-config>
  |             <partition-name>${jboss.partition.name}</partition-name>
  |          <load-balance-policy>org.jboss.ha.framework.interfaces.FirstAvailable</load-balance-policy>
  |         </cluster-config>
  | </session>
  | 

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3973991#3973991

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3973991



More information about the jboss-user mailing list