Problemas com selectOneMenu do primefaces com valueChangeListener
14 respostas
P
pauser2200
Galera to com um problema não estou conseguindo acessar o método do meu bean pelo valueChangeListener
quando selecionar uma opção no combo tenho que acessar meu metodo para poder fazer uma buscapelo id do item selecionado
meu bean
public void teste(ValueChangeEvent listener)throws Exception{
listener.getOldValue();
}
meu Jsf
<p:selectOneMenuvalueChangeListener='#{procedimentoDetalheBean.teste()}'value="#{procedimentoDetalheBean.objDominio.procedimento.id}"style="width: 250px;"immediate="true"><f:selectItemitemLabel="Selecione o procedimento"itemValue=""/><f:selectItemsvalue="#{procedimentoDetalheBean.listProcedimentos}"var="proced"itemLabel="#{proced.descricao}"itemValue="#{proced.id}"/></p:selectOneMenu>
Se vc colocar um breakpoint no método, ele é chamado?
P
pauser2200
NÃO
P
pauser2200
alguem?
G
Gabriel_Garcia
Lembro que tive um problema parecido e por isto não utilizei o selectOneMenu do primefaces, resolvi o meu problema utilizando o h:selectOneMenu com f:ajax da seguinte forma:
Dai vc pode depois tentar colocar o stylClass do primefaces nos componentes para que eles fiquem com o mesmo layout dos demais campos de seu form. Outra solução seria vc tentar utilizar o p:ajax dentro de seu p:selectOneMenu e chamar o método que vc precisa por ele utilizando o evento change. Esta forma eu não testei mas acredito que deve funcionar.
P
pauser2200
Com Ajax consigo chamar o método só que eu não consigo pegar o id do item selecionado.
tem alguma solução?
J
joaoorso
Tive um problema parecido …
só que no meu caso, o componente era um selectOneRadio.
Também tive o problema com o selectOneRadio e resolvi da mesma forma hehehe
G
Gabriel_Garcia
Com Ajax consigo chamar o método só que eu não consigo pegar o id do item selecionado.
tem alguma solução?
Se eu não me engano, no objto ActionEvent evt do seu método que será executado pelo change tem como vc pegar o objeto que está selecinado, preciso confirmar isto quando eu chegar em casa.
P
pauser2200
Se eu não me engano, no objto ActionEvent evt do seu método que será executado pelo change tem como vc pegar o objeto que está selecinado, preciso confirmar isto quando eu chegar em casa.