当action方法抛出异常时,它显示为PropertyNotFoundException

时间:2011-11-13 20:44:08

标签: exception-handling jsf-2 facelets

我们的应用程序是基于JSF2的,我们正在设计一个异常处理。我尝试使用faces-config.xml中配置的JSF2异常处理框架。

当我从支持bean中抛出空指针(在Facelets页面中引用)时,它将作为javax.el.PropertyNotFoundException进入异常处理函数,并且它没有任何其他堆栈跟踪。

有没有办法得到异常和堆栈跟踪的确切原因?

2 个答案:

答案 0 :(得分:1)

从复合组件内部调用action方法时会发生这种情况。这已被报告为JSF issue 1806,计划为JSF 2.2修复。

到目前为止,没有办法在异常处理程序中找到根本原因,因为它已被完全吞噬。您最好的选择是使用单独的记录器,或者作为一种hacky变通方法,将异常作为请求属性自行传递。

答案 1 :(得分:0)

启用开发模式通常会提供更好的错误信息。

将以下内容添加到您的web.xml中。

<context-param>
   <param-name>javax.faces.PROJECT_STAGE</param-name>   
   <param-value>Development</param-value>
</context-param>

但是你应该为你的制作关闭它。

相关问题