Bom dia galera, não estou conseguindo resolver a seguinte situação.
- Tenho uma tela que abre um modal.
- No modal tenho um textarea que é de preenchimento obrigatório.
- Ao clicar no botão FINALIZAR, a mensagem de preenchimento obrigatório é exibida no modal, mas também no <p:message que fica na tela de trás, mesmo eu colocando um id e mandar renderizar somente ele. Com o código e o print ficará claro o que estou dizendo.
Desde já agradeço
imagem da tela: https://snag.gy/rFjyRB.jpg
Tela que chama o modal
<?xml version="1.0" encoding="ISO-8859-1"?>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
...
<h:form ...
<!-- Mensagem da tela que chama o modal-->
<p:messages id="messages" closable="true" autoUpdate="true"/>
...
<componente:perguntas bean="#{mb}" widget="dialogPerguntas" renderPanelPerguntas="true"/>
</h:form>
...
Modal - perguntas.xhtml
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h = "http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:composite = "http://java.sun.com/jsf/composite">
<composite:interface>
<composite:attribute name="bean" />
<composite:attribute name="widget"/>
<composite:attribute name="renderPanelPerguntas" type="java.lang.Boolean"/>
</composite:interface>
<composite:implementation>
<p:dialog id="dialogPerguntas" position="center" modal="true" widgetVar="#{cc.attrs.widget}" resizable="false" closable="false" width="578">
<h:panelGrid id="gridPerguntas">
<!-- Mensagem que é pra exibir somente no modal-->
<p:message for="just" id="mensagemTextArea"/>
...
<h:panelGroup rendered="#{cc.attrs.bean.dialogPerguntasParaOCidadao.mudouACaracteristicaFisica || cc.attrs.bean.dialogPerguntasParaOCidadao.assinaturaMudou}">
<h:outputLabel value="Justificativa:"/><br />
<p:inputTextarea id="just" cols="74" rows="2" autoResize="false" maxlength="254" value="#{bean.dialogPerguntas.justificativa}" label="Justificativa" style="margin-top: 5px;" required="true" requiredMessage="Justificativa não preenchida">
</p:inputTextarea>
</h:panelGroup>
<!-- Botão FINALIZAR - ao clicar, deveria exibir mensagem apenas no modal, pois o botão está dando update="mensagemTextArea" -->
<div style="width: 120px; margin: auto !important; padding: 6px;">
<p:commandButton id="btnFinalizar" value="Finalizar" action="#{bean.fazAlgumaCoisaBean}" style="margin-left: 225px;" update="mensagemTextArea"/>
</div>
</h:panelGrid>
</p:dialog>
</composite:implementation>