Jsf 2 p:datatable中的Primefaces p:commandlink给出了错误的值

Jsf 2 p:datatable中的Primefaces p:commandlink给出了错误的值,jsf-2,primefaces,datatable,commandlink,Jsf 2,Primefaces,Datatable,Commandlink,我有一个datatable,它由从数据库中获取的名称列表组成。这些名称使用commandlink显示。代码如下所示: <h:form id="formp"> <p:dataTable id="listpat" var="p" value="#{loginBean.patient}"> <p:column> <p:comman

我有一个datatable,它由从数据库中获取的名称列表组成。这些名称使用commandlink显示。代码如下所示:

      <h:form id="formp">
              <p:dataTable id="listpat" var="p" value="#{loginBean.patient}"> 
                    <p:column> 
                        <p:commandLink value="#{p.firstname} #{p.lastname}" action="#     {loginBean.getPatientID(p.firstname)}" onclick="tabview.select(1);">
                        </p:commandLink>
                    </p:column>
              </p:dataTable>                  
      </h:form>


您使用了ManagedBean的哪个范围?我的ManagedBean的会话范围是否可以尝试将属性
process=“@this”
添加到
?尝试过,但仍然存在相同的问题。
public void getPatientID(String fname) {
    System.out.println(fname);
}
<p:commandLink value="#{p.firstname} #{p.lastname}" action="#{loginBean.getPatientID(p.firstname)}" onclick="tabview.select(1);">
<f:setPropertyActionListener target="#{loginBean.patient.firstname}" value="#{p.firstname}"
                    </p:commandLink>