Pessoal, criei um validador exemplo:
FacesContext.getCurrentInstance().addMessage("cadastroEmpresaForm:txtContato",new FacesMessage(FacesMessage.SEVERITY_ERROR, "* Usuario e/ou Senha Incorretos!", "Erro"));
Passei para o XHTML no input o
O Problema é:
Dessa forma não funciona:
<s:decorate template="../../layout/edit.xhtml">
<ui:define name="label">Contato</ui:define>
<h:inputText id="txtContato" value="#{empresaController.empresa.contato}" />
<h:message showDetail="true" for="txtContato" rendered="true" style="color: red" />
</s:decorate>
Dessa forma funciona:
<ui:define name="label">Contato</ui:define>
<h:inputText id="txtContato" value="#{empresaController.empresa.contato}" />
<h:message showDetail="true" for="txtContato" rendered="true" style="color: red" />
Com o decorate só recebo a mensagem:
12:01:59,911 Informações [javax.enterprise.resource.webcontainer.jsf.lifecycle] WARNING: FacesMessage(s) have been enqueued, but may not have been displayed.
sourceId=cadastroEmpresaForm:txtContato[severity=(ERROR 2), summary=(* Usuario e/ou Senha Incorretos!), detail=(Erro)]
Edit.xhtml
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:s="http://jboss.com/products/seam/taglib">
<div class="prop">
<s:label styleClass="name #{invalid?'errors':''}">
<ui:insert name="label"/>
<s:span styleClass="required" rendered="#{required}">*</s:span>
</s:label>
<span class="value #{invalid?'errors':''}">
<!-- <s:validateAll> -->
<ui:insert/>
<!-- </s:validateAll> -->
</span>
<span class="error">
<h:graphicImage value="/img/error.gif" rendered="#{invalid}" styleClass="errors"/>
<s:message styleClass="errors"/>
</span>
</div>
</ui:composition>