Aí pessoal, o fato de não chamar o evento quando seleciono algum país foi resolvido colocando a propriedade immediate=“true” no SelectOneMenu.
Porém ainda não terminei com meu problema… O SelectOneMenu está assim:
<p:selectOneMenu id="pais" value="#{paisController.pais}" immediate="true" >
<f:selectItem itemLabel="Selecione..." />
<f:selectItems value="#{paisController.listaPaisesCombo}" />
<p:ajax event="change" listener="#{paisController.actionCarregaUFs}" />
</p:selectOneMenu>
O problema agora é que ao selecionar algum país, não está sendo setado para o objeto ‘pais’ do bean. O objeto fica nulo. Enfim, minha próxima tentativa é implementar o Converter como alguns colegas já me sugeriram. Assim que eu tiver um tempinho eu vou tentar implementar e se der certo ou não eu voltarei aqui no tópico. Obrigado a todos desde já.
Pessoal, consegui resolver o problema. Até que enfim!!!
O que eu fiz:
- Implementei um converter para a classe Pais. Resultado: não funcionou!
- Pesquisei em sites não brasileiros sobre o problema que eu enfrentava, descobri um fórum onde foi postado que na classe da entidade (no meu caso a classe Pais) eu deveria sobrescrever os métodos ‘equals’ e ‘hashCode’. Resultado: agora está funcionando e o ajax está invocando o método a cada troca de país do combobox.
Se alguém que entende do negócio souber me dar uma explicação do porquê ter funcionado, eu fico grato. Muito obrigado a todos que tentaram me ajudar, certamente foi útil e me fez correr atrás de outras soluções.
P.S.: continuo usando o converter, mas acredito que todo problema seria resolvido apenas sobrescrevendo os dois métodos que eu citei.
[quote=jonas.cant]Pessoal, consegui resolver o problema. Até que enfim!!!
O que eu fiz:
- Implementei um converter para a classe Pais. Resultado: não funcionou!
- Pesquisei em sites não brasileiros sobre o problema que eu enfrentava, descobri um fórum onde foi postado que na classe da entidade (no meu caso a classe Pais) eu deveria sobrescrever os métodos ‘equals’ e ‘hashCode’. Resultado: agora está funcionando e o ajax está invocando o método a cada troca de país do combobox.
Se alguém que entende do negócio souber me dar uma explicação do porquê ter funcionado, eu fico grato. Muito obrigado a todos que tentaram me ajudar, certamente foi útil e me fez correr atrás de outras soluções.
P.S.: continuo usando o converter, mas acredito que todo problema seria resolvido apenas sobrescrevendo os dois métodos que eu citei.
[/quote]
Para o converter funcionar voce precisa do equals e hashCode implementados pois o JSF vai comparar o objeto selecionado com os objetos que estão na lista do OneMenu para saber qual é o correto.
Tudo que vai pra pagina é convertido em String e de alguma forma tem que ser convertido de volta em Objeto para o bean.
Então o problema era a falta do converter e a implementação do método equals e hashCode. Fica aí a solução pra quando outro inexperiente igual a mim tiver este problema. 
Muito obrigado pela resposta.