获取远程EJB异常的详细信息

时间:2010-11-18 13:09:37

标签: ejb-3.0

我在从远程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 个答案:

答案 0 :(得分:1)

处理异常有多种方法。我们可以对它们进行配置,以便从中获取有关根本原因的大部分信息。

以下链接可能会提供有用的信息&主题简要讨论。

EJB异常处理的最佳实践 - http://www.ibm.com/developerworks/java/library/j-ejbexcept.html