Exception 将异常堆栈从EJB3传播到portlet

Exception 将异常堆栈从EJB3传播到portlet,exception,logging,ejb-3.0,portlet,Exception,Logging,Ejb 3.0,Portlet,我有一个远程调用EJB3的SpringMVCPortlet。现在,当ejb抛出异常时,在门户端我只看到“ejb异常”。我无法访问实际的EJB3日志。那么我该怎么做才能使整个异常堆栈跟踪在门户端可用呢?您可以捕获EJBException(请注意,它是一个RuntimeException,因此,您的代码不需要捕获它),然后调用该方法来访问原始异常。有了它,你可以做任何你想做的事情,包括重新播放它 谢谢。像这样在前端和后端传播异常被认为是一种好的做法吗?这取决于。例外是例外,也就是说,它们永远不是有效

我有一个远程调用EJB3的SpringMVCPortlet。现在,当ejb抛出异常时,在门户端我只看到“ejb异常”。我无法访问实际的EJB3日志。那么我该怎么做才能使整个异常堆栈跟踪在门户端可用呢?

您可以捕获EJBException(请注意,它是一个RuntimeException,因此,您的代码不需要捕获它),然后调用该方法来访问原始异常。有了它,你可以做任何你想做的事情,包括重新播放它

谢谢。像这样在前端和后端传播异常被认为是一种好的做法吗?这取决于。例外是例外,也就是说,它们永远不是有效的结果。在处理不同的软件层时,应始终注意将适当的信息发送到其他层。因此,如果您发送的信息一层认为正常,而另一层认为不正常,那么您有一个“异常”:-)其他情况处于“错误”状态,如硬件故障、网络问题等。但是在这些情况下,您可能需要在离开另一层之前仔细考虑这些特定的细节。