2013-08-26 51 views
1

我有一个数据表内的另一个数据表。嵌套表我需要有一个多选择复选框,一个触发actionlistener的按钮和一个p:rowToggler以在行中显示更多数据。如果没有表中的选择列,toggler和commandbutton可以正常工作,但是当我添加此列时,commandButton不会进入辅助bean,点击时触发器无法正常工作,并且setSelected不会被调用。都抛出NP。我正在使用3.4.2仅在新版本中使用此功能?p:数据表多选复选框。 Rowtoggler触发事件

SEVERE: FullAjaxExceptionHandler: An exception occurred during processing JSF ajax request. Error page '/error.xhtml' will be shown. 
    java.lang.NullPointerException 

<p:dataTable id="gro" var="g" value="#{requestBean.main.childRequest}" styleClass="veaGrid" 
    paginator="true" rows="1" paginatorTemplate="{CurrentPageReport}" > 

<p:column> 
     <p:ajaxStatus > 
     <f:facet name="start"> 
      <p:graphicImage value="/resources/images/ajaxloadingbar.gif" /> 
     </f:facet> 

     <f:facet name="complete"> 
      <h:outputText value="" /> 
     </f:facet> 
    </p:ajaxStatus> 
    <p:dataTable id="group" var="g2" value="#{g.groups}" rowKey="#{g2.group_name}" selection="#{requestBean.selectedGroups}" > 

      <p:column selectionMode="multiple" style="width:2%" />    

       <p:column headerText="#{g.systemCd} - Groups" style="width:25%" > 
        #{g2.group_name} 
      </p:column> 
      <p:column style="width:2%"> 
       View Users <p:rowToggler /> 
       </p:column> 
      <p:rowExpansion> 

       <p:dataTable styleClass="veaGrid" var="g3" value="#{g2.group_members}" sortOrder="descending" 
        paginator="true" rows="10" 
        paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" 
        filteredValue="#{requestBean.filteredMembers}"> 
        <p:column filterBy="#{g3.first_name}"> 
         <h:outputText value="#{g3.first_name}"/> 
        </p:column> 
        <p:column filterBy="#{g3.last_name}"> 
         <h:outputText value="#{g3.last_name}"/> 
        </p:column> 
        <p:column filterBy="#{g3.signon}"> 
         <h:outputText value="#{g3.signon}"/> 
        </p:column> 
       </p:dataTable> 
      </p:rowExpansion> 

    </p:dataTable> 
      <center> 
      <p:commandButton id="continue" value="Continue" actionListener="#{requestBean.saveGroups}"/> 
      </center> 
    </p:column>   
</p:dataTable> 

回答

0

发现问题..我有requestBean.selectedGroups设置为

ArrayList<Group> 

我改变了属性

 Group[] 

现在一切再次起作用。