p:datatable Auswahl null

Ich versuche, wählbar datatable von primefaces 4.0, aber das ausgewählte Objekt immer null ist.
Ich habe müde hinzufügen rowKey wie hier und hier gesagt, aber immer noch null...

hier mein Seite:

<p:dataTable id="appDetailTable" var="appDetail"  value="#{newAppraiseBean.appDetailDataModel}"  
             paginator="true" rows="5" paginatorPosition="bottom" selection="#{newAppraiseBean.selectedAppDetail}" 
             rowKey="#{appDetail.appraiseDetailID}" selectionMode="single">
  <p:ajax event="rowSelect" listener="#{newAppraiseBean.modifyAppDetail()}" oncomplete="newAppDlg.show();" update=":newAppraiseForm:newAppDetail"/>   
</p:dataTable>

In meiner backing-bean:

newAppraiseBean.modifyAppDetail(): (Nur drucken Sie das ausgewählte Element)

public void modifyAppDetail(){
    System.out.println("modify, selectedAppDetail:"+selectedAppDetail);
}

DataModel:

private class AppraiseDetailDataModel extends ListDataModel<Appraisedetail> implements SelectableDataModel<Appraisedetail> {

    public AppraiseDetailDataModel(List<Appraisedetail> list) {
        super(list);
    }

    @Override
    public Object getRowKey(Appraisedetail t) {
        return t.getAppraiseDetailID();
    }

    @Override
    public Appraisedetail getRowData(String string) {
        List<Appraisedetail> appList=(List<Appraisedetail>) getWrappedData();
        for(Appraisedetail app:appList){
            System.out.println(app.getAppraiseDetailID());
            if(app.getAppraiseDetailID()==Integer.parseInt(string)){
                return app;
            }
        }
        return null;
    }

}

Immer drucken null und ich weiß nicht, was ich bin fehlt.

Update

Habe ich vereinfacht meinen code, und legte es auf google drive.

Dies ist eine Zip-Datei von netbean-Projekt, können Sie öffnen Sie es direkt mit netbean nach dem entpacken.

Und natürlich bleibt das problem, nachdem ich meinen code vereinfachen.

  • Was ist der Umfang Ihrer backing-bean?
  • es ist ViewScoped.
InformationsquelleAutor nosnhoj | 2014-04-02
Schreibe einen Kommentar