EJB本地调用时正常,远程调用时某个调用出现以下异常:
`INFO [org.jboss.ejb.client.remoting] (http-/0.0.0.0:8888-2) EJBCLIENT000013: Successful version handshake completed for receiver context EJBReceiverContext{clientContext=org.jboss.ejb.client.EJBClientContext@7d6c5dcd, receiver=Remoting connection EJB receiver [connection=org.jboss.ejb.client.remoting.ConnectionPool$PooledConnection@56e8cb9e,channel=jboss.ejb,nodename=larrysmbp]} on channel Channel ID 9be95b9d (outbound) of Remoting connection 43ff3370 to /127.0.0.1:4447
ERROR [stderr] (http-/0.0.0.0:8888-2) java.lang.IllegalStateException: EJBCLIENT000025: No EJB receiver available for handling [appName:xxx, moduleName:xxx-ejb, distinctName:] combination for invocation context org.jboss.ejb.client.EJBClientInvocationContext@635065a3`
经调试后发现,调用某个方法时传递了一个*VO*类作为参数,而这个类没有实现`Serializable`接口,导致实体不能序列化。
解决方法是实现`Serializable`接口即可。<!--EndFragment-->