1
resposta

a saida do meu SelectOneMenu tá esquisita

tenho uma tabela que precisa gravar o nome dos servidor cadastrados na aplicação. Escolhi o SelectOneMenu do Primefaces para mostrar os usuários da tabela usuário. o que tá acontecendo é que na saída em vez de mostrar o nome do servidor tá mostrando o nome do package@q233245

o curioso é que faço a mesma saída para uma outra tabela de forma idêntica e esta me retorna corretamente .

já verifiquei a estrutura da tabela, o bean ...

alguém pode ajudar ?.. eu sei que pode parecer básico... mas não tô vendo a correção...rsss

segue o código das duas saídas

<p:outputLabel for="nomeusuario" value="Servidor:" /> <h:selectOneMenu value="#{protocoloBean.usuarioId}" id="nomeusuario"> <f:selectItems value="#{protocoloBean.usuarios}" var="nomeusuario" itemlabel="#{usuario.servidor}" itemValue="#{usuario.id}"/>

e

<h:selectOneMenu value="#{protocoloBean.setorId}" id="setor"> <f:selectItems value="#{protocoloBean.setores}" var="setor" itemLabel="#{setor.nomesetor}" itemValue="#{setor.id}" />

1 resposta

Olá Eder, tudo bem?

na declaração do seu primeiro selectOneMenu, você declara uma var "nomeusuario", porém na declaração do itemLabel e itemValue você utiliza "usuario".

Será que o erro não se deve a isso?

Olha o exemplo do primefaces show case:

https://www.primefaces.org/showcase/ui/input/oneMenu.xhtml

<p:outputLabel for="advanced" value="Advanced:" />
        <p:selectOneMenu id="advanced" value="#{selectOneMenuView.theme}" converter="themeConverter" panelStyle="width:180px"
                         effect="fade" var="t" style="width:160px" filter="true" filterMatchMode="startsWith">
            <f:selectItems value="#{selectOneMenuView.themes}" var="theme" itemLabel="#{theme.displayName}" itemValue="#{theme}" />

            <p:column style="width:10%">
                <h:graphicImage name="showcase/images/themeswitcher/themeswitcher-#{t.name}.png" alt="#{t.name}" styleClass="ui-theme" />
            </p:column>

            <p:column>
                <h:outputText value="#{t.displayName}" />
            </p:column>
        </p:selectOneMenu>

Avisa ai, vamos tentar solucionar...Abraço!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software