Jsf javax.faces.FacesException:断言失败

Jsf javax.faces.FacesException:断言失败,jsf,Jsf,我的登录jspo页面如下所示 <%-- jsf:pagecode language="java" location="/src/pagecode/view/common/AIRLandingPage.java" --%><%-- /jsf:pagecode --%><%@taglib uri="http://java.sun.com/portlet" prefix="portlet"%><%@taglib uri="http://www.

我的登录jspo页面如下所示

<%-- jsf:pagecode language="java" location="/src/pagecode/view/common/AIRLandingPage.java" --%><%-- /jsf:pagecode --%><%@taglib
    uri="http://java.sun.com/portlet" prefix="portlet"%><%@taglib
    uri="http://www.ibm.com/jsf/html_extended" prefix="hx"%><%@taglib
    uri="http://java.sun.com/jsf/core" prefix="f"%><%@page language="java"
    contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"
    session="false"%><portlet:defineObjects />
<f:view>
    <hx:scriptCollector id="scriptCollectorLandingPage"
        preRender="#{pc_AirLandingPage.onPageLoadBegin}">

        <f:subview id="subViewInitiator"
            rendered="#{pc_AirLandingPage.blnRenderInitiator}"><jsp:include
                page="AIRSearchViewForms.jsp" flush="false"></jsp:include></f:subview>


        <f:subview id="subViewMRORAssignee"
            rendered="#{pc_AirLandingPage.blnRenderMRORAssignee}"><jsp:include
                page="AIRSearchAssignee.jsp" flush="false"></jsp:include></f:subview>

    </hx:scriptCollector>

</f:view>
这表示您的
已在包含页面中复制。这是违法的。整个JSF组件树只能有一个
,并且可以有多个
元素。
标签应该放在母版页中,
应该放在包含页中

按如下方式重写母版页:

<f:view>
    <hx:scriptCollector id="scriptCollectorLandingPage" preRender="#{pc_AirLandingPage.onPageLoadBegin}">
        <h:panelGroup rendered="#{pc_AirLandingPage.blnRenderInitiator}">
            <jsp:include page="AIRSearchViewForms.jsp" flush="false" />
        </h:panelGroup>
        <h:panelGroup rendered="#{pc_AirLandingPage.blnRenderMRORAssignee}">
            <jsp:include page="AIRSearchAssignee.jsp" flush="false" />
        </h:panelGroup>
    </hx:scriptCollector>
</f:view>
<f:subview id="subViewInitiator">
    ... original content here, do NOT use f:view!
</f:subview>


... 此处为原始内容,请勿使用f:view!
<f:view>
    <hx:scriptCollector id="scriptCollectorLandingPage" preRender="#{pc_AirLandingPage.onPageLoadBegin}">
        <h:panelGroup rendered="#{pc_AirLandingPage.blnRenderInitiator}">
            <jsp:include page="AIRSearchViewForms.jsp" flush="false" />
        </h:panelGroup>
        <h:panelGroup rendered="#{pc_AirLandingPage.blnRenderMRORAssignee}">
            <jsp:include page="AIRSearchAssignee.jsp" flush="false" />
        </h:panelGroup>
    </hx:scriptCollector>
</f:view>
<f:subview id="subViewInitiator">
    ... original content here, do NOT use f:view!
</f:subview>
<f:subview id="subViewMRORAssignee">
    ... original content here, do NOT use f:view!
</f:subview>