1

在一个简单的 jsf2.0 应用程序中,我收到此异常:javax.faces.application.ViewExpiredException 无法恢复视图。

在控制台中我收到以下错误:org.portletfaces.bridge.BridgeException: Must first call setPortletContext(PortletContext)

当我在不使用 Primefaces jar 的情况下执行我的应用程序时,它可以正常工作。但是在添加 Primefaces jar 之后,我开始收到此异常。

我正在使用 Tomcat 7.2。编辑:应用程序中只有 3 页,没有支持 bean。第一页上的链接正在调用第二页。但是当我点击链接时,我收到了这个错误,第二页没有显示。无法理解问题的原因。请帮忙。

4

1 回答 1

2

应用程序中只有 3 个页面,没有支持 bean。第一页上的链接正在调用第二页。但是当我点击链接时,我收到了这个错误,第二页没有显示。

如果您通过UICommand链接/按钮导航,则可能会发生这种情况。您根本不应该通过 POST 链接/按钮导航,而应该通过 GET 链接/按钮导航。

用普通链接/按钮替换所有那些UICommand错误地用于页面到页面导航的UIOutcomeTarget链接/按钮。换句话说,替换<h:commandButton><h:button><h:commandLink>和和。<p:commandLink><h:link><p:commandButton><p:button>

即不使用

<h:form>
    <p:commandButton value="Go to next page" action="nextpage" />
</h:form>

而是使用

<p:button value="Go to next page" outcome="nextpage" />

也可以看看:

于 2012-08-23T11:56:05.990 回答