1

我的问题有点复杂,但我举个例子。

我已经有一个 user.xhtml 页面(和一个使用它的 MB),我在其中注册了一个用户

<p:outputLabel value="Name:" /> <h:outputText value="#{userMB.bean.name}" />
<p:outputLabel value="e-mail:" /> <h:outputText value="#{userMB.bean.email}" />
etc...

现在我创建一个带有另一个字段的UserAdmMB继承UserMB。我想重用存在的 XHTML,比如使用<ui:include>

<ui:include src="user.xhtml" />
<p:outputLabel value="Address:" />
<h:outputText value="#{userAdmMB.anotherbean.address}" />

但是第一个 XHTML 已经包含userMB在其中(将在另一个访问点中使用)。更好的方法是如何做到这一点?

4

1 回答 1

1

将 bean 重构<ui:param><ui:include>.

新的包括:

<p:outputLabel value="Name:" /> <h:outputText value="#{user.name}" />
<p:outputLabel value="Email:" /> <h:outputText value="#{user.email}" />
...

客户:

<ui:include src="user.xhtml">
    <ui:param name="user" value="#{someBean.user}" />
</ui:include>
<ui:include src="user.xhtml">
    <ui:param name="user" value="#{someAdminBean.user}" />
</ui:include>
于 2015-01-11T23:40:59.680 回答