Exception handling 当操作方法引发异常时,它将显示为PropertyNotFoundException

Exception handling 当操作方法引发异常时,它将显示为PropertyNotFoundException,exception-handling,jsf-2,facelets,Exception Handling,Jsf 2,Facelets,我们的应用程序是基于JSF2的,我们正在为此设计一个异常处理。我尝试使用在faces config.xml中配置的JSF2异常处理框架 当我从Facelets页面中引用的backingbean抛出空指针时,它将作为javax.el.PropertyNotFoundException进入异常处理函数,并且它没有任何其他堆栈跟踪 有没有办法获得异常和堆栈跟踪的确切原因?启用开发模式通常会提供更好的错误信息 将以下内容添加到web.xml中 <context-param> <p

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

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


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

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

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

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

javax.faces.PROJECT_阶段
发展

但是,您应该在生产时关闭此选项。

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

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

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

javax.faces.PROJECT_阶段
发展

但是,您应该在生产时关闭此选项。

当从复合组件内部调用action方法时,会发生这种情况。这已经被报告为计划在JSF2.2中修复的问题


到目前为止,无法在异常处理程序中找到根本原因,因为它已完全被吞没。您最好使用一个单独的记录器,或者作为一种常见的解决方法,自己将异常作为请求属性传递。

当从复合组件内部调用操作方法时,会发生这种情况。这已经被报告为计划在JSF2.2中修复的问题


到目前为止,无法在异常处理程序中找到根本原因,因为它已完全被吞没。您最好使用一个单独的记录器,或者作为一种简单的解决方法,自己将异常作为请求属性传递。

我们在web.xml中有javax.faces.PROJECT_阶段作为开发。但它仍然显示为“facesexception”,而不是实际的异常,是否需要设置任何其他配置。您应该检查BalusC的错误链接。然而,您所说的是支持bean而不是复合组件。当我们遇到问题时,我们通常会得到堆栈跟踪。是否仍然可以在单个位置获得堆栈跟踪。我们确实有javax.faces.PROJECT_阶段作为web.xml中的开发。但它仍然显示为“facesexception”,而不是实际的异常,是否需要设置任何其他配置。您应该检查BalusC的错误链接。然而,您所说的是支持bean而不是复合组件。当我们遇到问题时,我们通常会得到堆栈跟踪。不管怎样,是否可以在单个位置获得堆栈跟踪。谢谢BalusC,知道什么时候发布JSF2.2了吗。关于jsf框架的任何建议…根据链接的jsf问题,自2.0.4-b11
Fix Version/s:2.0.4-b11、2.1.10、2.2.0-m04
发布JSF2.2以来,这一问题已经得到了解决。关于jsf框架的任何日志记录器建议……根据链接的jsf问题,自2.0.4-b11
Fix版本/s:2.0.4-b11、2.1.10、2.2.0-m04以来,此问题已得到修复