我想inlude <ui:include>
一个页面动态几次。
码:
<h:dataTable ..>
<h:column>
<ui:include src="#{create_page}">
<h:column>
<h:dataTable>
现在,当我提出它仍然存在只有最后inlude。 它会记住最后包含的页面只值。 我想在每个create_page唯一实体对象。 我怎样才能做到这一点?
我想inlude <ui:include>
一个页面动态几次。
码:
<h:dataTable ..>
<h:column>
<ui:include src="#{create_page}">
<h:column>
<h:dataTable>
现在,当我提出它仍然存在只有最后inlude。 它会记住最后包含的页面只值。 我想在每个create_page唯一实体对象。 我怎样才能做到这一点?
所述<ui:include>
是为在视图生成时执行的标记处理,而<h:dataTable>
是为观看期间执行的UI组件呈现的时间。 这意味着<ui:include>
在之前仅执行一次<h:dataTable>
的迭代期间,因此不。 你有效地结束了完全相同的包括每一行源。 当表单提交的行处理一个接一个,直到最后一排,这就是为什么你有效地与最后一排的值结束。
基本上有2种方法来解决这个问题:
使用<c:forEach>
代替<h:dataTable>
,这也运行期间视图生成时间。
使用标记文件或复合部件的代替<ui:include>
,这个视图中也运行渲染时间。
无论哪种方式,你还需要确保输入值绑定到后面的对象var
DataTable的属性,而不是一个相同的后台bean的属性。
<ui:include>
落在同一类别JSTL)