从 WAS8 迁移到 WAS9 时遇到 myFaces 错误?
Posted
技术标签:
【中文标题】从 WAS8 迁移到 WAS9 时遇到 myFaces 错误?【英文标题】:Facing myFaces error when migrating from WAS8 to WAS9? 【发布时间】:2021-03-29 04:52:49 【问题描述】:我们目前正在将我们的应用程序从 WAS8 迁移到 WAS9。我们使用 JSF 2.2 和 Primefaces 4.0。在 WAS8 应用程序中工作正常。但在 WAS9 中,我们收到以下错误:
未捕获的 service() 异常根本原因 Faces Servlet:javax.servlet.ServletException:/pages/xyz.xhtml - 找不到视图标识符的已保存视图状态:/pages/xyz.xhtml
我们的 web.xml 如下所示:
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Production</param-value>
</context-param>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<context-param>
<param-name>javax.faces.PARTIAL_STATE_SAVING</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>org.apache.myfaces.COMPRESS_STATE_IN_CLIENT</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>facelets.BUILD_BEFORE_RESTORE</param-name>
<param-value>true</param-value>
</context-param>
尝试将 STATE_SAVING_METHOD 更改为客户端。但这不起作用。谁能帮我解决这个错误。提前致谢。
【问题讨论】:
【参考方案1】:我想发表评论,但我没有足够的积分。
如果没有更多信息,很难说是什么原因造成的。
Web.xml 看起来不错。否则可能导致此错误的因素是会话过期或 cookie 问题。
还有一种可能是javax.faces.ViewState可能被破坏了?
我的想法是 org_apache_myfaces_NUMBER_OF_VIEWS_IN_SESSION 可能需要增加?
http://myfaces.apache.org/core20/myfaces-impl/webconfig.html#org_apache_myfaces_NUMBER_OF_VIEWS_IN_SESSION
但请阅读下面有关 viewexpiredexception 的更多信息,我希望这可以帮助您识别问题。 javax.faces.application.ViewExpiredException: View could not be restored
【讨论】:
以上是关于从 WAS8 迁移到 WAS9 时遇到 myFaces 错误?的主要内容,如果未能解决你的问题,请参考以下文章
从 JSF 1.2 迁移到 JSF 2.0 后,每次导航都出现 ViewExpiredException
Web项目未在Websphere 9中启动,BValInterceptor的CDI相关异常
使用捆绑在 webapp 中并在 Wildfly 上运行的 myfaces 时未调用 CDI Bean 方法
DefaultDataSource.getConnection(userID, password) 失败