Mike Miller [
https://community.jboss.org/people/mikemil] created the discussion
"IllegalStateException: Failed to find method for hash:6087666598386677791"
To view the discussion, visit:
https://community.jboss.org/message/800172#800172
--------------------------------------------------------------
JBoss 4.2.3.GA
We are working on a migration to EJB3 and working on the backward compatibility. We have
a server that is running with our SessionBeans that have been migrated to EJB 3.0. We
need to support cases where this server makes service calls on SessionBeans in a different
server, that is running basically the same code, but on EJB 2.1. I have tried a few
things but seem to be getting stuck with the this issue of not finding the correct
method.
I tried:
1. Using the RemoteHome and RemoteHomeBinding in my session bean with a Home interface
defined in the 3.0 server instance. I had to create an alternate call to our service
locator to handle getting the home interface and calling create(), but that all seems to
be working okay. We we actually try to call the remote method is when we get the current
error.
2. This error occurance below comes from trying the removal of the RemoteHome and
RemoteHomeBinding annotations from our 3.0 session bean and also deleted the Home
interface in the 3.0 server instance. To prevent the ClassNotFoundErrors for the home
class on the 3.0 server, I have created a jar with the Home interface from the 2.1 server
instance, signed it and placed that in our ear folder and referenced that jar in the
application.xml. Still same exception!
I believe this an instance of the 3.0 to 2.1 backward compatibility scenario but I can
seem to get it working. We are not touching the 2.1 server instance. Most of the
examples seems to be of bean co-existing on the same server instance, which allows for the
use of the @EJB annotations to help. We can't do that because we are in a session
bean on one server and retrieving a 2.1 service from a remote server, so we use JNDI,
which seems to be working.
Any ideas what I am missing? Suggestions?
ERROR
https://community.jboss.org/message/800172#800172#800172/root
IllegalStateException: Failed to find method for hash:6087666598386677791 Caught exception
while trying to repoll : java.lang.IllegalStateException: Failed to find method for
hash:6087666598386677791 available={8594593460157411074=public abstract
javax.ejb.EJBObject javax.ejb.Handle.getEJBObject() throws java.rmi.RemoteException,
7415355246179212884=public abstract boolean
javax.ejb.EJBObject.isIdentical(javax.ejb.EJBObject) throws java.rmi.RemoteException,
8600444116638585484=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.addProcess(int,com.jda.portfolio.infrastructure.base.process.AbstractProcess)
throws java.rmi.RemoteException, 3176383116050142106=public abstract boolean
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.isEODRunning()
throws java.rmi.RemoteException, 3459013104155209360=public abstract int
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getRunningProcessStatus()
throws java.rmi.RemoteException, 8023408628542931870=public abstract java.util.ArrayList
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.loadChecks(boolean)
throws java.rmi.RemoteException, -1324426544258457612=public abstract boolean
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.isUpdateEODPrefs()
throws java.rmi.RemoteException, -1225864925247205563=public abstract void
javax.ejb.EJBObject.remove() throws java.rmi.RemoteException,javax.ejb.RemoveException,
-3430023375606625937=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setCheckProcesses(java.util.ArrayList)
throws java.rmi.RemoteException, 8981122088959051067=public abstract javax.ejb.HomeHandle
javax.ejb.EJBHome.getHomeHandle() throws java.rmi.RemoteException,
-4899641156120081774=public abstract boolean
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.runCentralForceDownload(java.lang.String)
throws java.rmi.RemoteException, -3278682204038307545=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setUpdateEODPrefs(boolean)
throws java.rmi.RemoteException, -7940001347631500920=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.stopChecks()
throws java.rmi.RemoteException, 6790693439931590569=public abstract
com.jda.portfolio.infrastructure.base.controller.ProcessMonitor
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getProcessMonitor()
throws java.rmi.RemoteException, 8264013315949344562=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setChecksCompleted(boolean)
throws java.rmi.RemoteException, -7421716371264175145=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.runProcessesSequentially()
throws java.rmi.RemoteException, 8536179260875325978=public abstract
com.jda.portfolio.infrastructure.base.process.AbstractProcess
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getRunningProcess()
throws java.rmi.RemoteException, -5269460829974437302=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.addPropertyChangeListener(java.beans.PropertyChangeListener)
throws java.rmi.RemoteException, -883843542736932254=public abstract java.lang.Object
javax.ejb.EJBObject.getPrimaryKey() throws java.rmi.RemoteException,
-2590129623172426220=public abstract boolean
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.isChecksCompleted()
throws java.rmi.RemoteException, 4121927297169232143=public abstract void
javax.ejb.EJBHome.remove(javax.ejb.Handle) throws
java.rmi.RemoteException,javax.ejb.RemoveException, -3260590760910195779=public abstract
javax.ejb.Handle javax.ejb.EJBObject.getHandle() throws java.rmi.RemoteException,
1023555753582321414=public abstract java.util.Date
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getBusinessDate()
throws java.rmi.RemoteException, 6379407847924920184=public abstract boolean
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.isProcessMonitorFinished()
throws java.rmi.RemoteException, 1989880768363748471=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.runCentralProcessesSequentially()
throws java.rmi.RemoteException, -107499859717975299=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setEODRunning(boolean)
throws java.rmi.RemoteException, 1198857148195425150=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setProcesses(java.util.ArrayList)
throws java.rmi.RemoteException, -7423251857241384719=public abstract void
javax.ejb.EJBHome.remove(java.lang.Object) throws
java.rmi.RemoteException,javax.ejb.RemoveException, 3603204012067117518=public abstract
com.jda.portfolio.infrastructure.base.controller.AbstractProcessController
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getProcessController()
throws java.rmi.RemoteException, -1784489294664631537=public abstract
java.beans.PropertyChangeListener
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getStatusChangeListener()
throws java.rmi.RemoteException, 5313134895258323668=public abstract boolean
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.runCentralRepoll(java.util.ArrayList,java.util.Date)
throws java.rmi.RemoteException, 4587012503417889761=public abstract boolean
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getProcessMonitorFailed()
throws java.rmi.RemoteException, 4512095171315154818=public abstract javax.ejb.EJBHome
javax.ejb.EJBObject.getEJBHome() throws java.rmi.RemoteException,
-523296331097319625=public abstract java.util.ArrayList
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getCheckProcesses()
throws java.rmi.RemoteException, 7322075118954587029=public abstract
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessServiceHome.create()
throws javax.ejb.CreateException,java.rmi.RemoteException, -2772317058699513373=public
abstract java.util.ArrayList
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getOverRidenChecks()
throws java.rmi.RemoteException, 1795143354224526549=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setCanceled(boolean)
throws java.rmi.RemoteException, -7385696591418600868=public abstract java.util.ArrayList
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.getProcesses()
throws java.rmi.RemoteException, 2056663019065401382=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.clean() throws
java.rmi.RemoteException, -4990788526596460909=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.setOverRidenChecks(java.util.ArrayList)
throws java.rmi.RemoteException, 4342811972915933694=public abstract java.util.ArrayList
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.loadChecks()
throws java.rmi.RemoteException, -4378986748400941033=public abstract void
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.createEODMarkerTransaction()
throws java.rmi.RemoteException, -8558958223302123381=public abstract boolean
com.jda.portfolio.infrastructure.server.service.eod.EndOfDayProcessService.isCanceled()
throws java.rmi.RemoteException, 3781219857755091396=public abstract javax.ejb.EJBMetaData
javax.ejb.EJBHome.getEJBMetaData() throws java.rmi.RemoteException}
at org.jboss.invocation.MarshalledInvocation.getMethod(MarshalledInvocation.java:407)
at org.jboss.ejb.Container.invoke(Container.java:958)
at sun.reflect.GeneratedMethodAccessor122.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at
org.jboss.invocation.jrmp.server.JRMPInvoker$MBeanServerAction.invoke(JRMPInvoker.java:818)
at org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:419)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
at sun.rmi.transport.Transport$1.run(Transport.java:177)
at sun.rmi.transport.Transport$1.run(Transport.java:174)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:173)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
at
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:273)
at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:251)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:160)
at org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown Source)
at
org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:133)
at org.jboss.invocation.InvokerInterceptor.invokeInvoker(InvokerInterceptor.java:365)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:197)
at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:61)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:70)
at
org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:112)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:100)
at $Proxy1076.runCentralRepoll(Unknown Source)
at
com.jda.portfolio.cos.server.service.repoll.CentralRepollInvoker$TimerThread.run(CentralRepollInvoker.java:351)
--------------------------------------------------------------
Reply to this message by going to Community
[
https://community.jboss.org/message/800172#800172]
Start a new discussion in EJB3 at Community
[
https://community.jboss.org/choose-container!input.jspa?contentType=1&...]