Jsf 如何避免特定页面中的web.xml错误页面

Jsf 如何避免特定页面中的web.xml错误页面,jsf,web.xml,jsf-1.2,Jsf,Web.xml,Jsf 1.2,在我的web.xml文件中有以下错误页面: <error-page> <exception-type>javax.faces.application.ViewExpiredException</exception-type> <location>/pages/inactivity.jsf</location> </error-page> <error-page> <exceptio

在我的
web.xml
文件中有以下
错误页面

<error-page>
    <exception-type>javax.faces.application.ViewExpiredException</exception-type>
    <location>/pages/inactivity.jsf</location>
</error-page>

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

javax.faces.application.ViewExpiredException
/pages/inactivity.jsf
java.lang.Throwable
/页面/error.jsp
问题如下:

有时,我会得到
ViewExpiredException
,它会进入
非活动
页面,但是,似乎有些
。xhtml
文件试图使用不再在会话中的东西,然后我通常会得到
NullPointerException
。但是,第二个错误是第一个错误的子错误,因此,我的第一个错误句柄应该足够

我想知道是否有一种方法可以使特定的
异常类型的
错误页面
不显示在某个特定页面中(在我的例子中,在不活动的情况下)

有办法做到这一点吗

顺便说一句:我使用的是JSF1.2


编辑


而且,我刚刚意识到这在Firefox中不会发生,只是在chrome中。不要在IE中测试,因为我没有:)

我不理解具体问题。NPE与
ViewExpiredException
的关系如何?到底发生了什么?你到底期望什么?你说的“第二个错误是第一个错误的孩子”到底是什么意思?那不是你自己代码中的一个bug吗?事实上,我不记得了,而且非常罕见。如果我在
web.xml
中保留
会话超时时间
=1,则这种情况最常见。然后,当我尝试使用
ManagedBean
时,我得到了一个
ManagedBeanCreationException
,它也应该重定向到非活动状态(映射在web.xml中)。在这种情况下,当出现
ManagedBeanCreationException
时,将显示不活动页面,但是,由于托管bean为null(由于未能初始化它),我在我的xhtml文件中也得到了Faces异常,然后它将转到错误页面。好吧。。。具体的堆栈跟踪将非常有助于理解您的具体问题。您最后的评论给人的印象仍然是您自己的代码中有一个bug。您只是在
manageduseriogado
inicializarUsario()
方法的第382行有一个bug。把它修好,然后我们再谈。是的,我明白了。。。但我不明白为什么会发生这种情况,因为如果不可能初始化ManagedUserioLogado类,它怎么会落在类内的方法中呢?