JSF:p:commandLinks在datatable中selectionMode为多个时不工作

JSF:p:commandLinks在datatable中selectionMode为多个时不工作,jsf,Jsf,我正在处理一个包含InputExt、CommandLink和数据表的xhtml文件。文件的部分内容如下所示: <div> <h:inputText value="#{MyBean.inputval}" /> <p:commandLink value="Button A" action="#{MyBean.actionA}" /> <p:commandLink value="Button B" action="#{MyB

我正在处理一个包含InputExt、CommandLink和数据表的xhtml文件。文件的部分内容如下所示:

<div>
      <h:inputText value="#{MyBean.inputval}" />
      <p:commandLink value="Button A" action="#{MyBean.actionA}" />
      <p:commandLink value="Button B" action="#{MyBean.actionB}" />
</div>
<p:dataTable value="#{MyBean.dataList}" var="data">
      <p:columnGroup type="header">
         <p:row>
           <p:column headerText="headerA" selectionMode="multiple" rowspan="2" />
           <p:column headerText="headerB" />
         </p:row>
         <p:row>
           <p:column headerText="headerB2" />
         </p:row>
      </p:columnGroup>

      // This column is the source of the problem
      <p:column selectionMode="multiple" />

      <p:column><h:outputText value="#{data.get('hb')}" /><br/>
                <h:outputText value="#{data.get('hb2')}" />
      </p:column>
</p:dataTable>

//此列是问题的根源

如果我删除dataTable部分的selectionMode=“multiple”,上面的操作就可以了,我已经通过注释指出了这一点。问题不在我的工作范围之内。我没有任何错误,什么都没有发生

但是,如果我删除了selectionMode=“multiple”,我的所有commandlinks都可以工作,但表头上将选中所有复选框的复选框将被禁用


我的问题是,我怎样才能使这两种方法都起作用?我做错了什么?请帮助标题中的
p:column
不能有
标题文本,因为这是一个特殊的primefaces函数。您希望选中所有子视图的标题复选框。只需使用与中使用的样式相同的样式。

为什么您使用selectionMode=“multiple”声明了两列。我认为这是不对的。如果您声明了,那么您应该声明数据表的selection属性,该属性应该映射到托管bean中的变量数组或对象列表,与selectionmode对应的列上应该出现的复选框不会出现。谢谢你的建议,我正在尝试。我不熟悉使用jsf和java,所以这很容易混淆。请参阅此链接了解如何使用复选框进行多重选择。