Jsf Datatable中的参数化方法有时接收空参数

Jsf Datatable中的参数化方法有时接收空参数,jsf,primefaces,parameters,datatable,Jsf,Primefaces,Parameters,Datatable,我有以下数据表: <p:dataTable id="persons" styleClass="hide-column-names personTable" value="#{personListDisplayerBean.allPersonsModel}" var="person" paginator="true" rows="25" paginatorTemplate="{CurrentPageReport} {F

我有以下数据表:

<p:dataTable id="persons" styleClass="hide-column-names personTable"
            value="#{personListDisplayerBean.allPersonsModel}" var="person"
            paginator="true" rows="25"
            paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
            rowsPerPageTemplate="5,10,25,50,100"
            selection="#{personDetailsDisplayerBean.selectedPerson}"
            filteredValue="#{personListDisplayerBean.filteredPersons}"
            selectionMode="single" widgetVar="personTable">

            ...
            ...

            <p:column styleClass="person-list-image-column">
                <p:graphicImage styleClass="thumbnail"
                    value="#{personListDisplayerBean.getImageForPerson(person)}" />

            </p:column>
           ...
           ...

</p:dataTable>
为什么JSF在第二次调用该方法时给我一个null作为参数?我能克服这个问题吗


提前感谢:)

这是,但是我不能投票支持这个复制品的关闭,因为愚蠢的关闭系统没有考虑利基标签,它抱怨这个复制品没有一个经过投票的答案。总结:你的具体问题是因为你试图做与你发现的解决方案中提到的不同的事情。我建议以后不要再这样做了,除非你真的了解“幕后”工作。哇,太快了:谢谢,我现在应该删除这个问题吗?我是新来的。。。
String fileName = person.getObjectGUID();
File f = new File(fileName + ".jpg");
FileInputStream inputStream;
try {
   inputStream = new FileInputStream(f);
} catch (FileNotFoundException e) {
   return new DefaultStreamedContent();
}
stream = new DefaultStreamedContent(inputStream,"image/jpg");
return stream;