У меня есть данные, которые состоят из списка имен, взятых из базы данных. Эти имена отображаются с помощью командной строки. Код показан ниже:Предисловие p: commandlink в p: datatable дает неправильное значение
<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>
нажав commandlink вызывает метод getPatientID (p.firstname) в опорном бобе. Я понял, что имя на ссылке, которую я нажимаю, не соответствует тому, что находится в бэкэнде. (например, имя, нажатое в командной строке, не совпадает с именем, полученным передачей в бэк-файл). Что может быть причиной? Как я могу это решить?
public void getPatientID(String fname) {
System.out.println(fname);
}
Какой объем ваших ManagedBean вы использовали? – Diganta
SessionScope для моего управляемого компонента – user1097856
вы можете попробовать добавить атрибут 'process =" @ this "' to ''? –
Diganta