Não consigo mostrar a mensagem ao lado do campo.
<ui:define name="corpo">
<h:form id="frm">
<p:focus context="frm" />
<h1>Cadastro de Serviço</h1>
<p:messages id="messages" showDetail="true" autoUpdate="true" closable="true" />
<p:toolbar style="margin-top: 20px">
<p:toolbarGroup>
<p:button value="Novo" outcome="/servicos/CadastroServico" />
<p:commandButton value="Salvar" id="botaoSalvar" actionListener="#{cadastroServicoBean.salvar}" />
</p:toolbarGroup>
<p:toolbarGroup align="right">
<p:button value="Pesquisa" outcome="/servicos/PesquisaServico" />
<p:separator />
<p:button value="Limpar Formulário" />
</p:toolbarGroup>
</p:toolbar>
<h:panelGrid columns="2" id="painel" styleClass="form-cadastro-serv" >
<p:outputLabel value="cliente" style="float:right; margin-top:2px;" id="cliente" />
<p:inputText size="40" styleClass="campo" id="cli" for="cliente" required="true" label="Cliente é obrigatório">
<p:message for="cli"/>
</p:inputText>
<p:outputLabel value="telefone fixo" style="float:right;" lang="telefone fixo" />
<p:inputMask id="tel" mask="(99) 9999-9999" size="16" styleClass="campo" required="true" label="telefone" />
Tenta tirar de dentro do inputText …
tirei só que apresenta de forma global, queria que fica ao lado do componente.
Está em cima do meu form, e esta dando certo, só que queria retirar a mensagem que fica do meu form e colocar ao lado do componente.
<p:messages id="messages" autoUpdate="true" closable="true" />
Dayson_Rodrigues:
painel
No seu commandButton coloca p/ dar update só no panelGrid (painel) e validateClient=“true” . Tenta ai
EDIT: Particularmente, eu prefiro dar o update no message na mão mesmo(designar). Mas cada um faz conforme sua necessidade.
acabei mudando de ideia reference a posição das mensagem. Como faço para que quando mostrar a mensagem, marcar o componente com label para o usuário saber que é aquele determinado campo?
Usa a opção com o tooltip (acho até elegante)
<p:outputLabel for="tt" value="Tooltip:" />
<p:inputText id="tt" required="true" />
<p:message for="tt" display="tooltip" />
refs: http://www.primefaces.org/showcase/ui/message/messages.xhtml
não fez nada.
<h:panelGrid columns="2" id="painel" styleClass="form-cadastro-serv" >
<p:outputLabel value="cliente" style="float:right; margin-top:2px;" for="cliente_campo" />
<p:inputText size="40" styleClass="campo" id="cliente_campo" required="true" label="cliente" >
<f:validateLength minimum="3" />
<p:message display="tooltip" for="cliente_campo"/>
</p:inputText>
Mas o componente de mensagem está novamente dentro do input. Tem que ficar fora.