我将 XHTML 页面的一部分包含到我的 Web 应用程序中。这部分可以包含多次。这就是问题所在!因为每个 include 都指向同一个 java 对象。这意味着每个元素都具有相同的值。但我希望每个都包含一个新的 Java 对象。那么解决这个问题的最佳方法是什么?
主页包括:
<ui:composition template="./templates/template.xhtml">
<ui:define name="mainContent">
<ui:include src="include/includeAbleEditor.xhtml">
<ui:param name="includeParam" value="MyClass" />
</ui:include>
<ui:include src="include/includeAbleEditor.xhtml">
<ui:param name="includeParam" value="YourClass" />
</ui:include>
</ui:define>
包括AbleEditor.xhtml
<h:commandButton value="#{editorVisibility.evb.value}"
action="#{editorVisibility.evb.toggle}" />
<h:inputTextarea rendered="#{editorVisibility.evb.enabled}" />
这<h:inputTextarea>
是我的问题的一个例子。每个包含的 inputTextarea 都有一个切换按钮。通过单击按钮,应该显示或隐藏文本区域。但是由于布尔值的相同引用,value
所有<h:inputTextarea>
将始终具有相同的渲染值。
你有什么建议吗?
非常感谢!