簡體   English   中英

PrimeFaces中的單元格編輯為空

[英]Cell Editing in PrimeFaces get null

我有一個問題:當我嘗試編輯單元格時, oldValuenewValue中的 值為null 這是XHTML的代碼:

<h:form id="tabela">  
     <p:contextMenu for="tabelaPrzypomnien" widgetVar="cMenu">     
        <p:menuitem value="Edit Cell" icon="ui-icon-search" onclick="PF('carsTable').showCellEditor();return false;"/>    
        <p:menuitem value="Hide Menu" icon="ui-icon-close" onclick="PF('cMenu').hide()"/>    
    </p:contextMenu>
 <p:dataTable id="tabelaPrzypomnien" value="#{obslugaUzytkownikow.listaZadan}" var="zadania" rows="10" rowsPerPageTemplate="5,10,15"  
                 paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                 paginator="true" lazy="true" editable="true" editMode="cell" widgetVar="carsTable">   
<f:facet name="header">  
            In-Cell Editing  
        </f:facet>     

    <p:ajax event="cellEdit" listener="#{obslugaZadan.onCellEdit}"/>
        <p:column headerText="id grupy">  
            <h:outputText value="#{zadania.id_grupy}" />  
        </p:column>   

        <p:column headerText="Temat" sortBy="temat">  
               <p:cellEditor>  
                   <f:facet name="output">
                        <h:outputText value="#{zadania.temat}" />
                   </f:facet>  
                   <f:facet name="input">
                        <p:inputText value="#{zadania.temat}" style="width:96%" />
                   </f:facet>  
               </p:cellEditor> 
        </p:column>  

        <p:column headerText="Deadline" sortBy="deadline">  
            <h:outputText value="#{zadania.deadline}" />  
        </p:column> 

    </p:dataTable>  

和ObslugaZadan Bean,onCellEdit方法:

public void onCellEdit(CellEditEvent event)
     {  
            Object oldValue = event.getOldValue();  
            Object newValue = event.getNewValue();

            System.out.println(oldValue + " i druga: " + newValue + "    event: " + (String) event.getColumn().getHeaderText());

            if(newValue != null && !newValue.equals(oldValue))
            {  
                System.out.println("rsedtcyfvubi" + oldValue + " i druga: " + newValue);
            }  
        }

更新后的控制台信息: INFO:null i druga:null事件:Temat

因此:var事件不為null,但oldValue和newValue為null,我不知道為什么! 請幫忙! 順便說一句,我有PF 4.0,Eclipse Kepler和GlassFish 4.0。 我已經受夠了...

我只是解決了同樣的問題,這是因為我的DataTable.value綁定到了ManagedBean.getList()之類的函數,而不是綁定到ManagedBean的字段。

當我將DataTable.value更改為綁定到ManagedBean的字段時,它起作用了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM