Primefaces数据表不编辑

时间:2014-05-02 06:51:39

标签: primefaces datatable

我正在尝试使可编辑的primefaces数据表。我正在使用http://www.primefaces.org/showcase/ui/datatableRowEditing.jsf。显示所有数据库表数据,但后来我尝试编辑表中的数据我遇到以下错误:

/index.xhtml @ 23,90 listener =“#{tableBean.onEdit}”:目标无法访问,标识符'tableBean'解析为null:javax.el.PropertyNotFoundException:/index.xhtml @ 23,90 listener =“ #{tableBean.onEdit}“:目标无法访问,标识符'tableBean'已解析为null

的index.xhtml

<h:head>
    <title>index.xhtml</title>
</h:head>

<h:body>

    <h:form id="form">  

<p:growl id="messages" showDetail="true"/>  

<p:dataTable var="u" value="#{logonTest.userList}" id="carList" editable="true">  

    <f:facet name="header">  
        In-Cell Editing  
    </f:facet>  

    <p:ajax event="rowEdit" listener="#{tableBean.onEdit}" update=":form:messages" />  
    <p:ajax event="rowEditCancel" listener="#{tableBean.onCancel}" update=":form:messages" />  

    <p:column headerText="Name" style="width:30%">  
        <p:cellEditor>  
            <f:facet name="output">  
                <h:outputText value="#{u.name}" />  
            </f:facet>  
            <f:facet name="input">  
                <p:inputText value="#{u.name}" style="width:100%"/>  
            </f:facet>  
        </p:cellEditor>  
    </p:column>  

    <p:column headerText="Surname" style="width:20%">  
        <p:cellEditor>  
            <f:facet name="output">  
                <h:outputText value="#{u.surname}" />  
            </f:facet>  
            <f:facet name="input">  
                <p:inputText value="#{u.surname}" style="width:100%" />  
            </f:facet>  
        </p:cellEditor>  
    </p:column>  

TableBean.java

   public void onEdit(RowEditEvent event) {  
        FacesMessage msg = new FacesMessage(" Edited", ((User) event.getObject()).getName());  

        FacesContext.getCurrentInstance().addMessage(null, msg);  
    }  

    public void onCancel(RowEditEvent event) {  
        FacesMessage msg = new FacesMessage(" Cancelled", ((User) event.getObject()).getName());  

        FacesContext.getCurrentInstance().addMessage(null, msg);  
    }  

0 个答案:

没有答案