无法重试之前未完成的请求

时间:2015-06-15 12:16:37

标签: wildfly

我必须在现有的工作应用程序中复制一些现有的bean及其远程接口。现在每当我调用其中一个方法时,我都会遇到以下异常:

java.lang.IllegalStateException: EJBCLIENT000032: Cannot retry a request which hasn't previously been completed
at org.jboss.ejb.client.EJBClientInvocationContext.retryRequest(EJBClientInvocationContext.java:203)
at org.jboss.ejb.client.EJBInvocationHandler.sendRequestWithPossibleRetries(EJBInvocationHandler.java:256)
at org.jboss.ejb.client.EJBInvocationHandler.sendRequestWithPossibleRetries(EJBInvocationHandler.java:265)
at org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:198)
at org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:181)
at org.jboss.ejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:144)
at com.sun.proxy.$Proxy27.createRawSTRProfiles(Unknown Source)
at org.acme.project.CreateSomethingRunnable.run(CreateSomethingRunnable.java:76)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)

同一个bean适用于其他方法调用。客户端和服务器端都没有其他异常,从不调用所讨论的服务器方法内的断点。我不知道如何调试,谷歌也不在乎这个错误信息。我们正在使用WildFly 8.1.0.Final。

有人可以帮助阐明这个问题吗?感谢。

1 个答案:

答案 0 :(得分:3)

我们的根异常是ClassNotFoundError,因为EAR中完全不相关的JAR版本号错误。

仔细检查一切。我们拆除了发送的值(将所有字段设置为null)。如果有效,我们会逐个将字段设置为对象,检查Serializable的相关类(因为有时缺少Serializable会导致类似的异常)。

简而言之,确保通过线路的所有类都实现Serializable接口。