JSF 2错误处理不起作用

时间:2011-12-27 07:50:29

标签: jsf-2

我正在尝试简单转发到JSF 2应用程序中的错误页面。各处的说明看起来很简单,但它对我不起作用。这是我试过的。我在web.xml中添加了以下内容:

<error-page>
     <exception-type>java.lang.Throwable</exception-type>
     <location>/pages/error.jsf</location>
</error-page> 

我尝试了异常类型java.lang.Exception,我尝试使用错误代码而不是异常类型。我还尝试将页面命名为(在上面的代码片段中)error.xhtml,我尝试使用error.jsp页面完成所有这些操作。什么都行不通。

我只是通过断开数据库服务器来测试这一点,因此任何登录尝试都会导致异常。并且它显示在屏幕上而不是错误页面上。

我正在使用eclipse,tomcat 7和myfaces 2.1.4。同样在我的WEB-INF / lib中,我有primefaces-3.0.RC2和prettyfaces-jsf2-3.3.2。

我做错了什么/不做什么?

2 个答案:

答案 0 :(得分:2)

您是否关闭了Facelets的错误机制?在web.xml文件中,您可能需要具有以下context-param:

<context-param>
   <param-name>facelets.DEVELOPMENT</param-name>
   <param-value>false</param-value>
</context-param>

如果您还使用MyFaces,则需要以下附加上下文参数:

<context-param>
   <param-name>org.apache.myfaces.ERROR_HANDLING</param-name>
   <param-value>false</param-value>
</context-param>

article可能对您有用。

答案 1 :(得分:0)

您是否使用任何托管bean来处理错误?如果是这样,你宣布了吗?看看这个article