请帮助了解以下问题: 从JBoss迁移到Wildfly 8后,如果在bean中抛出了一些运行时异常,我会在客户端接收到这个异常,但我会收到IO异常:
客户方:
Caused by: javax.ejb.EJBException: java.io.IOException: Channel Channel ID ddd7dcd1 (outbound) of Remoting connection 12c97f7d to localhost/127.0.0.1:80 has been closed
at org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:236)
at org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:181)
at org.jboss.ejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:144)
在服务器端我看到了这个:
14:26:00,167 ERROR [ejb3] JBAS014250: Could not write method invocation failure for method public abstract void com.allot.nms.catalog.mobile.ejb.MobileControllerInternal.replaceCatalogEntries(java.util.Collection) throws com.allot.nms.catalog.exception.CatalogException on bean named MobileControllerBean for appname NMS modulename catalog distinctname due to: java.io.IOException: JBAS014560: Could not open message outputstream for writing to Channel
at org.jboss.as.ejb3.remote.protocol.AbstractMessageHandler.writeException(AbstractMessageHandler.java:102)
at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler.access$400(MethodInvocationMessageHandler.java:70)
at org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler$1.run(MethodInvocationMessageHandler.java:213)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
at org.jboss.threads.JBossThread.run(JBossThread.java:122)
Caused by: java.lang.InterruptedException
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1302)
at java.util.concurrent.Semaphore.acquire(Semaphore.java:312)
at org.jboss.as.ejb3.remote.protocol.versionone.ChannelAssociation.acquireChannelMessageOutputStream(ChannelAssociation.java:66)
at org.jboss.as.ejb3.remote.protocol.AbstractMessageHandler.writeException(AbstractMessageHandler.java:100)
似乎处理最初抛出的异常存在一些问题。 相同的代码适用于JBoss。 任何想法如何解决它并使异常传播到客户端? 非常感谢。