Boa tarde, estou com o seguinte problema e ficarei muito grato pela atenção.
Tenho uma página jsf com um formulário. Neste formulário existem três botões (commandButton) que no caso dão submit na página. Que são o cadastrar, listar e limpar.
Dois campos do total é obrigatório. No caso coloquei validações neles. Eu gostaria que as validações funcionacem apenas no botão cadastrar. No caso quando o cliente for listar ou limpar o formulário que os campos não sejam requeridos. Como eu faria isso???
Logo abaixo está o código.
Desde já agradeço a atenção.
Abraço
<f:view>
<h:form id="cadastro">
<h:panelGrid rowClasses="linhasCad" styleClass="tabelaCad" headerClass="cabecalhoCad" border="0" columns="3">
<f:facet name="header">
<h:outputText value="Pessoa"/>
</f:facet>
<h:outputText value="Identificador:"/>
<h:inputText id="identificador" value="#{PessoaView.pes.identificador}" readonly="true"/>
<rich:message for="identificador"/>
<h:outputText value="RG:"/>
<h:inputText required="true" requiredMessage="RG é obrigatório!!" id="rg" value="#{PessoaView.pes.rg}">
<rich:ajaxValidator event="onblur" />
</h:inputText>
<rich:message for="rg"/>
<h:outputText value="Município:"/>
<h:inputText id="municipio" value="#{PessoaView.pes.municipio}"/>
<rich:message for="municipio"/>
<h:outputText value="Órgão Expeditor:"/>
<h:inputText id="rgorgaoexp" value="#{PessoaView.pes.rgorgaoexp}"/>
<rich:message for="rgorgaoexp"/>
<h:outputText value="Data Emissão RG:"/>
<rich:calendar id="rgemissao" value="#{PessoaView.pes.rgemissao}" converter="converteAnoMySQL" datePattern="yyyy-MM-dd"/>
<rich:message for="rgemissao"/>
<h:outputText value="CPF:"/>
<h:inputText id="cpf" value="#{PessoaView.pes.cpf}"/>
<rich:message for="cpf"/>
<h:outputText value="Sexo:"/>
<h:inputText maxlength="1" id="sexo" value="#{PessoaView.pes.sexo}"/>
<rich:message for="sexo"/>
<h:outputText value="Título Eleitoral:"/>
<h:inputText id="titeleitoral" value="#{PessoaView.pes.titeleitoral}"/>
<rich:message for="titeleitoral"/>
<h:outputText value="Email:"/>
<h:inputText id="email" value="#{PessoaView.pes.email}"/>
<rich:message for="email"/>
<h:outputText value="Endereço:"/>
<h:inputText id="endereco" value="#{PessoaView.pes.endereco}"/>
<rich:message for="endereco"/>
</h:panelGrid>
<br />
<h:panelGrid columns="4" styleClass="tabelaBot">
<a4j:commandButton value="Cadastrar" rendered="#{PessoaView.botCad}" styleClass="botao" action="#{PessoaView.create}"/>
<a4j:commandButton value="Alterar" rendered="#{PessoaView.botAlt}" styleClass="botao" action="#{PessoaView.update}"/>
<a4j:commandButton value="Listar" styleClass="botao" action="#{PessoaView.mudaListar}" />
<a4j:commandButton value="Limpar" styleClass="botao" action="#{PessoaView.limpa}"/>
</h:panelGrid>
<br />
<br />
</h:form>
<h:form id="resultado">
<rich:dataTable rowClasses="linha_a, linha_b" styleClass="tabela" headerClass="cabecalho" value="#{PessoaView.todos}" var="item"
rendered="#{PessoaView.listar}" cellpadding="2" cellspacing="0">
<f:facet name="header">
<h:outputText value="Pessoas Cadastradas"/>
</f:facet>
<h:column>
<f:facet name="header">
<h:outputText value="RG"/>
</f:facet>
<h:outputText value="#{item.rg}"/>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="Municipio"/>
</f:facet>
<h:outputText value="#{item.municipio}"/>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="CPF"/>
</f:facet>
<h:outputText value="#{item.cpf}"/>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="Sexo"/>
</f:facet>
<h:outputText value="#{item.sexo}"/>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="E-Mail"/>
</f:facet>
<h:outputText value="#{item.email}"/>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="Operação"/>
</f:facet>
<h:commandLink action="#{PessoaView.editar}">
<h:graphicImage styleClass="link" url="imagens/rtg_rate.gif" title="Alterar"/>
</h:commandLink>
<h:commandLink action="#{PessoaView.excluir}">
<h:graphicImage styleClass="link" url="imagens/bRmv.gif" title="Apagar"/>
</h:commandLink>
</h:column>
</rich:dataTable>
</h:form>
</f:view>
</body>
</html>