SelectOneMenu - Valor padrão

197 views
Skip to first unread message

hermogenes Silva

unread,
Jul 6, 2015, 3:49:48 PM7/6/15
to jav...@googlegroups.com
Olá pessoal,
demorei para encontrar como setar um valor padrão no selectOneMeu e encontrei a resposta neste post: http://sdeveloperslab.blogspot.com.br/2013/05/how-to-set-default-value-of.html

então resolvi compartilhar para registrar

<p:selectOneMenu id="estado" value="selecinarIdDoItemPadrao">
                <f:selectItem itemLabel="Selecione" itemValue="selecionarselecinarIdDoItemPadrao"/>
                <f:selectItems value="#{mBProcedenciaExterna.siglaEstado}" var="siglasEstado"
                    itemValue="#{siglasEstado}" itemLabel="#{siglasEstado.descricao}"  />
            </p:selectOneMenu>

Assim o itemLabel="Selecione" será o item padrão do combo



t+

Cássio Oliveira

unread,
Jul 7, 2015, 2:53:25 AM7/7/15
to jav...@googlegroups.com
No caso vai selecionar o item como padrão mas para o usuário vai ficar aparecendo no campo o item "Selecione", correto? Eu uso de uma forma mais transparente e que realmente é difícil de se ver esse método em pesquisas na net: Na entidade/classe de modelo onde está o atributo que vai receber a escolha do selectOneMenu, cria-se um método anotado com @PostConstruct e seta o valor do atributo com o valor da lista.

#XHTML

<p:outputLabel for="country" value="País: "/>
            <p:selectOneMenu id="country" value="#{clientBean.client.country}">
                <f:selectItem itemLabel="Selecione..." noSelectionOption="true"/>
                <f:selectItems value="#{personBean.returnCountries}"
                               itemLabel="#{countries}"
                               itemValue="#{countries}" var="countries"/>
            </p:selectOneMenu>

#Classe Cliente (Model/Entidade)

public class Client{

   //Outros atributos

    private String country;

    @PostConstruct
    public void init() {
        setCountry("Brasil");
    }

    //Getters e Setters
}

Dessa forma, o usuário vê que tem um valor selecionado e caso não seja alterado, o mesmo é setado no objeto.

Espero que ajude e valeu por compartilhar!



---
Cássio Oliveira
Informática 100 Mistérios - http://www.cassioliveira.com.br
Wizard Micro - http://www.wizardmicro.com.br/
-----------------------------------------------------------------------------------------
ANÁLISE E DESENVOLVIMENTO DE SISTEMAS - IFPB
---------------------------------------------------------------------------------------------
Parceiro VAN-OI - Caixa Econômica Federal
---------------------------------------------------------------------------------------------

--
Você recebeu essa mensagem porque está inscrito no grupo "javasf: JavaServer Faces Group" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para javasf+un...@googlegroups.com.
Acesse esse grupo em http://groups.google.com/group/javasf.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/javasf/CAB%2BSberoUHBkJb38m7iFKrgS8DqkdUrReyFMKXUNXLY8c1iLjw%40mail.gmail.com.
Para mais opções, acesse https://groups.google.com/d/optout.

hermogenes Silva

unread,
Jul 7, 2015, 11:40:22 AM7/7/15
to jav...@googlegroups.com
Obrigado Cassio,
Vou fazer um teste usando sua sugestão ;)

Reply all
Reply to author
Forward
0 new messages