我们的应用程序是基于JSF2的,我们正在设计一个异常处理。我尝试使用faces-config.xml
中配置的JSF2异常处理框架。
当我从支持bean中抛出空指针(在Facelets页面中引用)时,它将作为javax.el.PropertyNotFoundException
进入异常处理函数,并且它没有任何其他堆栈跟踪。
有没有办法得到异常和堆栈跟踪的确切原因?
答案 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>
但是你应该为你的制作关闭它。