PrimeFaces SelectOneMenu não mostra valor selecionado

Bom dia senhores

uma coisa estranha que percebi no primefaces, estou utilizando o p:selectOneMenu e quando eu volto de uma tela ele simplesmente não mostra o valor selecionado, mesmo ele estando (pois eu debuguei e vi que o valor está correto e até removi ele e coloquei o h:selectOneMenu e ele mostrou corretamente). Alguem passou por isso? Abaixo está o meu código:

<p:selectOneMenu id="cbxTipoBusca" value="#{enderecoBean.tipoBusca}">
    <f:selectItems value="#{enderecoBean.tipoBuscas}" />
    <p:ajax event="change" update="pnlBairroAux,pnlCondicao" oncomplete="focalizar('frmCadastro:txtCondicao')" />
</p:selectOneMenu>

Só para comentar, o tipoBusca é um enum como pode ser visto abaixo:

EnderecoTipoBusca

package br.com.tebosoftware.controller.endereco;

/**
 *
 * @author Shubacca
 * @data 14/01/2013
 */
public enum EnderecoTipoBusca {

    LOGRADOURO("Logradouro"), CEP("Cep");
    private String descricao;

    private EnderecoTipoBusca(String descricao) {
        this.descricao = descricao;
    }

    public String getDescricao() {
        return descricao;
    }
}

Grato

Você não precisa associar um converter a ele?

Esse objeto da lista possui o método equals sobrescrito?

Oi Rodrigo

No caso, o objeto é um enum e até onde eu sabia, os enum não precisavam de conversores, mas mesmo assim eu estava fazendo um teste com um conversor e mesmo assim não funciona.

É alguma falha do primefaces, pois com o componente padrão do jsf funciona corretamente.

Olha só, verdade… Nem me toquei que era um Enum hehehe :slight_smile:

Não é imprimido nenhum erro no console? ou até no log de js do browser? as vezes deu algum pau ali mesmo.

Em anexo eu adicionei 3 imagens que demonstram o q eu estou falando.
Na primeira é o estado inicial.
Na segunda é quando eu troco para o valor Cep e por ajax ele muda os componentes. Em seguinda cliquei no botão novo e depois na tela seguinte (que na realidade é um h:panelGroup não renderizado), eu clico no cancelar e quando volta fica como na imagem 3





Não tem erro no console não.

Olha o código completo do pedaço…

<h:panelGrid columns="3" rowClasses="celulaTop">
    <h:panelGrid>
        <components:label value="Tipo Busca:" />
        <p:selectOneMenu id="cbxTipoBusca" value="#{enderecoBean.tipoBusca}">
            <f:selectItems value="#{enderecoBean.tipoBuscas}" />
            <p:ajax event="change" update="pnlBairroAux,pnlCondicao" oncomplete="focalizar('frmCadastro:txtCondicao')" />
        </p:selectOneMenu>
    </h:panelGrid>
    <h:panelGroup id="pnlBairroAux">
        <h:panelGrid id="pnlBairro" columns="2" rowClasses="celulaBottom" rendered="#{enderecoBean.buscaLogradouro}">
            <h:panelGrid>
                <components:label value="Bairro:" />
                <p:inputText value="#{(empty enderecoBean.bairro ? '<Todas>' : enderecoBean.bairro.descricao.concat('-').concat(enderecoBean.bairro.cidade.descricao).concat('-').concat(enderecoBean.bairro.cidade.estado.sigla))}" disabled="true" size="30" />
            </h:panelGrid>
            <h:panelGroup>
                <p:commandLink title="Selecionar bairro" onclick="dlgBairro.show();return false;" styleClass="botaoProcurar" />
                <p:commandLink title="Remover bairro" update="pnlBairro,pnlTabela" styleClass="botaoLimpar">
                    <f:setPropertyActionListener target="#{enderecoBean.bairro}" value="" />
                </p:commandLink>
            </h:panelGroup>
        </h:panelGrid>
    </h:panelGroup>
    <h:panelGrid>
        <components:label value="Condição:" />
        <h:panelGroup id="pnlCondicao">
            <p:focus for="txtCondicao" rendered="#{enderecoBean.buscaLogradouro}" />
            <p:inputText id="txtCondicao" value="#{enderecoBean.condicao}" size="30" maxlength="50" rendered="#{enderecoBean.buscaLogradouro}" />
            <p:focus for="txtCondicao2" rendered="#{enderecoBean.buscaCep}" />
            <p:inputMask id="txtCondicao2" mask="99999-999" value="#{enderecoBean.condicao}" size="9" rendered="#{enderecoBean.buscaCep}" />
        </h:panelGroup>
    </h:panelGrid>
</h:panelGrid>

Por favor, alguém já conseguiu resolver esse problema?
Está acontecendo o mesmo comigo.