tenho um p:selectOneMenu com o código abaixo:
<p:selectOneMenu effect="fade"
value="#{pacienteController.paciente.id_paciente}"
style="height:20px; font-size: 13px; width: 250px " >
<f:selectItems value="#{pacienteController.listaPaciente()}"
var="paciente"
itemLabel="#{paciente.paciente}"
itemValue="#{paciente.id_paciente}"/>
</p:selectOneMenu>
esse código faz carregar em p:selectOneMenu todos os pacientes cadastrados em meu banco de dados,
me mostra o nome do paciente e para gravar na tabela de agendamento o id do paciente, pois na tabela
de agendamento o paciente é chave estrangeira, então é necessário o id do paciente, ate aí tudo bem.
tenho também o código abaixa que carrega as informações do paciente na mesma tela:
<p:layout fullPage="false">
<p:layoutUnit position="center">
<h:form prependId="reu" >
<h:outputText value="CPF:"
style="height:20px; font-size: 13px"/>
<h:outputText value="#{paciente.cpf}"
style="height:20px; font-size: 13px"/><br/>
<h:outputText value="RG:"
style="height:20px; font-size: 13px"/>
<h:outputText value="#{paciente.rg}"
style="height:20px; font-size: 13px"/><br/>
<h:outputText value="Endereço:"
style="height:20px; font-size: 13px"/>
<h:outputText value="#{paciente.endereco}"
style="height:20px; font-size: 13px"/><br/>
<h:outputText value="Telefone:"
style="height:20px; font-size: 13px"/>
<h:outputText value="#{paciente.telefone}"
style="height:20px; font-size: 13px"/><br/>
<h:outputText value="Celular:"
style="height:20px; font-size: 13px"/>
<h:outputText value="#{paciente.celular}"
style="height:20px; font-size: 13px"/><br/>
</h:form>
</p:layoutUnit>
</p:layout>
o que eu quero fazer é o seguinte. No momento que eu selecionar um paciente pelo meu p:selectOneMenu
me traga as informações correspondente aquele paciente que eu selecionar.
aqui está minha classe pacienteController onde eu listo todos os pacientes e carrego no meu p:selectOneMenu somente o nome de todos os pacientes cadastrados na minha tabela paciente
public List<Paciente> listaPaciente() {
List<Paciente> lista;
lista = new PacienteDao().list();
return lista;
}
e aqui está o código da minha classe PacienteDao:
public List<Paciente> list() {
Session ss = HibernateUtil.getSessionFactory().getCurrentSession();
ss.beginTransaction();
List lista = ss.createQuery("From paciente").list();
ss.beginTransaction().commit();
return lista;
}
alguém poderia me ajudar nisso por favor?