1

我在另一个数据表中有一个数据表。嵌套表我需要有一个多选复选框、一个触发 actionlistener 的按钮和一个 ap:rowToggler 以在行中显示更多数据。在表中没有选择列的情况下,切换器和命令按钮可以正常工作,但是当我添加此列时,commandButton 不会转到支持 bean,单击时切换器无法正常工作,并且不会调用 setSelected。两者都抛出一个NP。我正在使用 3.4.2 仅在较新版本上使用此功能吗?

  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> 
4

1 回答 1

0

找到了问题..我将 requestBean.selectedGroups 设置为

 ArrayList<Group>

我将属性更改为

      Group[] 

现在一切都恢复正常了。

于 2013-08-29T14:08:01.160 回答