Pegar valor do selectOneMenu

9 respostas
mauricioadl

Pessoal, boa tarde!

Tenho um selectOneMenu que eh carregado via ajax, esse selectOneMenu eh uma lista de strings, porem nao consigo fazer com que o valor selecionado pelo usuario va para o atributo do meu managedBean.

meu codigo:

<h:selectOneMenu id="embalagens" value="#{bean.MEU_ATRIBUTO}" > <f:selectItems value="#{bean.embalagens}" ></h:selectOneMenu>

so q o qndo dou submit o MEU_ATRIBUTO esta vazio

O engraçado que o problema so acontece prq esta usando ajax, se carregar antes funciona

alguma dica?

vlw

9 Respostas

Hebert_Coelho

Como você criou o get desse cara? MEU_ATRIBUTO

mauricioadl

get e set normal, nao tem nada especifico.

o problema eh com o maldito ajax, qndo eu trago os valores no carregamento da tela funciona de boa, mas qndo eu trago via ajax da pau.

Hebert_Coelho

Eu perguntei do get/set pois chamar um atributo de MEU_ATRIBUTO é fora de padrão, e nisso, seu framework não iria reconhecer.

Como você está chamando seu ajax?

mauricioadl

heheheeh o nome MEU_ATRIBUTO eu coloquei so aqui no site, no projeto eh certinho! eh q o codigo fonte eh protegido aqui na empresa, nao pode ser copiado nem pedaços em foruns. regras internas. :frowning:

o ajax eu chamo basicao:
ajax render=“embalagens” event=“blur”

o ajax chama e funciona de boa, o selectOne eh preenchido. o unico problema eh que quando eh feito o POST o valor do selectOne vai nulo.
se eu remover a chamada ajax e deixar que ele carregue no inicio funciona.

ja vi 3 topicos aqui no forum com o mesmo problema e nenhum deles colocou a solução. to ficando maluco jah!

vlw

R

Mauricio qual é o componente que dispara esse ajax?Coloca esse codigo pra gente ver.

mauricioadl

o que dispara o ajax eh um inputText

<f:ajax render="embalagens" event="blur"> <h:inputText value="#{bean.campo}"/> </f:ajax>

R

mauricioadl:
o que dispara o ajax eh um inputText

<f:ajax render="embalagens" event="blur"> <h:inputText value="#{bean.campo}"/> </f:ajax>

Não era pra ser o contrário(o f:ajax dentro do h:input)?

mauricioadl

eh ao contrario quando o input chama algum metodo no managedBean dae poe o parametro valueChangeListener.
nesse caso ele apenas faz o post no id que vc passar, no meu caso o “embalagens”

enfim!

O problema nao eh a requisição ajax, ele funciona normal! o problema eh que quando o formulario eh submetido o selectOne mesmo com os valores preenchidos fica null no managedBean.

conseguiu entender o problema?

mauricioadl

Acabei de notar outra coisa. fui olhar o html gerado e o maldito do selectOne nao possui valores no html e visualmente os valores estão lah.

vai entender!!! :oops:

Criado 24 de janeiro de 2012
Ultima resposta 25 de jan. de 2012
Respostas 9
Participantes 3