Wildfly 8 - 将异常从服务器传递到客户端

时间:2016-10-27 12:10:51

标签: java jboss wildfly-8

请帮助了解以下问题: 从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。 任何想法如何解决它并使异常传播到客户端? 非常感谢。

0 个答案:

没有答案