2010-11-18 120 views
0

的细节我有很大的问题从远程EJB获取异常详细信息...获取远程EJB异常

我有一个远程EJB,其中一个EJB调用其他EJB做某些任务,实现流水线模式。我无法弄清楚的是如何在出现问题时获得更有意义的例外。

这是一个“非常有用”输出我通常从EJB容器(Glassfish的)得到的一个例子:

2010-11-18 12:22:36,974 DEBUG [CustomerDetectionFilter.java:48 [eef819a4debb613d0670dab35c39] - Checking customer details ...
2010-11-18 12:22:37,026 ERROR [ServiceCore.java:104] [eef819a4debb613d0670dab35c39] - nested exception is: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is: java.rmi.RemoteException: null; nested exception is: javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: org.omg.CORBA.TRANSACTION_ROLLEDBACK: vmcid: 0x2000 minor code: 1806 completed: Maybe javax.ejb.EJBException: nested exception is: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is: java.rmi.RemoteException: null; nested exception is: javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 9998 Maybe; nested exception is: org.omg.CORBA.TRANSACTION_ROLLEDBACK: vmcid: 0x2000 minor code: 1806 completed: Maybe at com.my.remote._CustomerDetectionFilterRemote_Wrapper.execute(com/my/remote/_CustomerDetectionFilterRemote_Wrapper.java) ~[project-common.jar:na]

因此,在这种情况下,我就知道,这是原因: 的java .rmi.RemoteException:null

...但我没有办法获得更多有用的信息进行调试。

您可以推荐一种除远程EJB的调用者需要获得关于发生问题的更多细节的处理方法吗? AppServer是Glassfish 2.1。

谢谢

博佐

回答

1

有处理异常的各种方式。我们可以将它们配置为从中获取有关根本原因的大部分信息。

下面的链接可能会提供有用的信息&主题是简要讨论。在EJB异常处理

的最佳实践 - http://www.ibm.com/developerworks/java/library/j-ejbexcept.html

+0

TNX的答案,可惜的链接无法正常工作。 – bozo 2011-01-09 09:10:11

+0

我再次访问链接,但没有问题,工作正常http://www.ibm.com/developerworks/java/library/j-ejbexcept.html。如果问题仍然存在,那么您可以在IBM Developerworks java部分的最佳实践系列中找到该主题。 – 2011-01-10 06:33:44