Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 2 是否使用虚拟组件包装多个p:行?_Jsf 2_Primefaces - Fatal编程技术网

Jsf 2 是否使用虚拟组件包装多个p:行?

Jsf 2 是否使用虚拟组件包装多个p:行?,jsf-2,primefaces,Jsf 2,Primefaces,我有一个多行的panelGrid。有些行是用c:forEach生成的,因为ui:repeat、p:dataTable和p:dataList不会“呈现” 我的目标是更新迭代中生成的行,更新后这些行的大小和内容会有所不同,但是我没有可以引用的id为的组件。不,我不能用@form <p:commandButton value="Update" action="#{someBean.someAction}" process="someThing" update=" ??? "> <p

我有一个多行的panelGrid。有些行是用c:forEach生成的,因为ui:repeat、p:dataTable和p:dataList不会“呈现”

我的目标是更新迭代中生成的行,更新后这些行的大小和内容会有所不同,但是我没有可以引用的id为的组件。不,我不能用@form

<p:commandButton value="Update" action="#{someBean.someAction}" process="someThing" update=" ??? ">

<p:panelGrid>
  <p:row> 
   ...
   </p:row>
  <c:forEach var="projectDto" items="#{someBean.someDtos}" varStatus="i">
    <p:row> 
     ...
     </p:row>
  </c:forEach>
</p:panelGrid>
有没有办法做到这一点?也许在迭代过程中会出现一些虚拟组件

琼尼


旁白:我已经在Primefaces论坛上问过了。感谢jordandenison的回答确实是专有的,包括我在内的半年内没有人会明白这是怎么回事。所以也许还有另一种方法。

将panelGrid绑定到bean属性

<p:panelGrid binding="#{someBean.panelGrid}"/>

行、列和PanelGrid应来自org.primefaces。。。。包。

另一方面,如果bean的范围超过requestscope,则不要这样做,因为这将导致各种问题。[
Row row = new Row();

HtmlOutputText text = new HtmlOutputText();
text.setValue("text");

column = new Column();
column.getChildren().add(text);

row.getChildren().add(column);

panelGrid.getChildren().add(row);