优雅地处理“查看状态无法重建”错误

时间:2012-10-06 12:05:58

标签: jsf jsf-2 websphere

我的应用程序在Apache MyFaces V2.0上。 Application Server是WebSphere V8.0。在使用如下URL的安全性测试期间,应用程序在浏览器中呈现错误,暴露应用程序服务器详细信息。我在web.xml中有以下条目。请建议一个优雅地处理这种情况的解决方案。

Web.xml中

<error-page>
<exception-type>javax.faces.application.ViewExpiredException</exception-type>
<location>/error.xhtml</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/error/error500.xhtml</location>
</error-page>

网址

  

本地主机/应用/ test.xhtml emailId=test1@abcd.com& clickSubmit =保存并javax.faces.ViewState = 83eNclk%2FbIe05NjdSUOQtQqlm5FVhzOBEHXMRHzqXhuC7fG%2BpJS9xRI%2BxN9tCjZIPg2dA3%2B8Xdor%2Bj40Wjiy%2FxO3J%2Bu0lbQJFHXnGNxYwUUh102oPNugRXQAmHNJsjYDnxwh9w%3D%3D

错误:

  

错误页面例外

     

SRVE0260E:服务器无法使用为您指定的错误页面   申请处理下面印刷的原始例外。

     

原始例外:

     

错误消息:javax.servlet.ServletException:/app/test.xhtml没有保存   可以在视图标识符中找到视图状态:/app/test.xhtml   错误代码:500目标Servlet:Faces Servlet错误堆栈:   javax.faces.application.ViewExpiredException   org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:128)

 at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:171)

 at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

 at javax.faces.webapp.FacesServlet.service(FacesServlet.java:189) 
 at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1224)

 at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:774)

 at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:456)

 at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)

 at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.

0 个答案:

没有答案