Pessoal, meu selectItem retorna o valor que é para retornar somente quando eu preencho todos os campos requireds do form, mas se eu clico no botão de adicionar os dados na rich:dataTable, sem os demais campos estarem preenchidos ele não adiciona, mesmo colocando immediate = true.
Segue o código:
<%@include file="../../include/tagLibs.jsp"%>
<html>
<%@include file="../../include/head.jsp"%>
<body onLoad="resolucao();">
<f:view>
<a4j:keepAlive beanName="AutoInfracaoAmbientalView" ajaxOnly="false"/>
<div id="geral">
<%@include file="../../include/header.jsp"%>
<div id="titulo">
<div>
<rich:spacer width="20px"/>
<h:outputText styleClass="link2" value="Registros de Fiscalização"/>
</div>
</div>
<div id="conteudo">
<a4j:form id="frmPrincipal" >
<div style="padding-left: 10px;padding-right10px; float: left;width: 215px;min-height:394px; border-right:1px solid #54673d">
<rich:panelMenu style="width:200px" mode="ajax"
iconExpandedGroup="disc" iconCollapsedGroup="disc"
iconExpandedTopGroup="chevronUp" iconGroupTopPosition="right"
iconCollapsedTopGroup="chevronDown">
<rich:panelMenuGroup label="Registros de Fiscalização" expanded="true">
<rich:panelMenuItem>
<a4j:commandLink value="Consulta" action="fiscalizacaoRegistroConsulta"></a4j:commandLink>
</rich:panelMenuItem>
<rich:panelMenuItem>
<a4j:commandLink value="Denuncia" action="fiscalizacaRegistroDenuncia"></a4j:commandLink>
</rich:panelMenuItem>
<rich:panelMenuItem >
<a4j:commandLink value="Ofício de Solicitação" action="fiscalizacaRegistroOfSolicitacao"></a4j:commandLink>
</rich:panelMenuItem>
<rich:panelMenuItem>
<a4j:commandLink value="Notificação Ambiental" action="fiscalizacaRegistroNotAmbiental"></a4j:commandLink>
</rich:panelMenuItem>
<rich:panelMenuItem>
<a4j:commandLink value="Auto Infração Ambiental" action="fiscalizacaRegistroAia"></a4j:commandLink>
</rich:panelMenuItem>
</rich:panelMenuGroup>
</rich:panelMenu>
</div>
<div style="float: left; width: 720px;min-height:400px;padding-left: 10px">
<h:outputLabel id="title" value="Registro de Fiscalização - Auto de Infração Ambiental" />
<br>
<h:outputLabel id="outNumeroAIA"
value="Nº AIA" >
</h:outputLabel>
<h:inputText id="inNumeroAIA"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalNumero}"
required="true"
requiredMessage="Campo Nº AIA obrigatório"
converterMessage="Digite apenas número no campo: Nº AIA">
<f:convertNumber integerOnly="true"/>
</h:inputText>
<br>
<h:outputLabel id="outAutuado"
value="Nome do Autuado" >
</h:outputLabel>
<h:inputText id="inAutuado"
value="#{AutoInfracaoAmbientalView.labelAutuada}"
required="true"
requiredMessage="Campo Nome do Autuado obrigatório">
<a4j:support oncomplete="#{rich:component('mpPessoaAutuada')}.show()"
event="onclick"
reRender="mpPessoaAutuada"
ajaxSingle="true"
focus="inCPFCNPJ">
</a4j:support>
</h:inputText>
<a4j:commandLink id="cbBuscarAutuado"
oncomplete="#{rich:component('mpPessoaAutuada')}.show()"
reRender="mpPessoaAutuada"
ajaxSingle="true"
ignoreDupResponses="true"
focus="inCPFCNPJ">
<h:graphicImage style="cursor:pointer"
value="images/lupa.png" >
</h:graphicImage>
</a4j:commandLink>
<br>
<h:outputLabel id="outEnderecoDaInfracao"
value="Endereço da Infração" >
</h:outputLabel>
<h:inputText id="inEnderecoDaInfracao"
value="#{AutoInfracaoAmbientalView.labelEnderecoDaInfracao}"
required="true"
requiredMessage="Campo Endereço da Infração obrigatório">
<a4j:support oncomplete="#{rich:component('mpEndereco')}.show()"
event="onclick"
reRender="mpEnderecoDaInfracao"
ajaxSingle="true"
focus="inCEP">
</a4j:support>
</h:inputText>
<a4j:commandLink id="cbBuscarEnderecoInfracao"
oncomplete="#{rich:component('mpEndereco')}.show()"
reRender="mpEnderecoDaInfracao"
ajaxSingle="true"
ignoreDupResponses="true"
focus="inCEP">
<h:graphicImage style="cursor:pointer"
value="images/lupa.png" >
</h:graphicImage>
</a4j:commandLink>
<br>
<h:outputLabel id="outDataDaInfracao"
value="Data da Infração" >
</h:outputLabel>
<rich:calendar id="richCalendarInfracao"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalDataInfracao}"
datePattern="dd/MM/yyyy"
required="true"
requiredMessage="Campo Data Data da Infração obrigatório">
</rich:calendar>
<br>
<h:outputLabel id="outCategoriaDaFiscalizacao"
value="Categoria da Fiscalização" >
</h:outputLabel>
<h:selectOneMenu id="selCategoriaDaFiscalizacao"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalCategoriaFiscalizacao.cafisCodigo}"
required="true"
requiredMessage="Campo Categoria da Fiscalização obrigatório"
immediate="true">
<f:selectItem itemValue="" itemLabel="Selecione"/>
<f:selectItems value="#{AutoInfracaoAmbientalView.retornarCategoriaDaFiscalizacao}"/>
</h:selectOneMenu>
<br>
<h:outputLabel id="outIndicativoDeMultaInicial"
value="Indicativo de Multa Inicial" >
</h:outputLabel>
<h:inputText id="inIndicativoDeMultaInicial"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalMultaInicial}"
required="true"
requiredMessage="Campo Indicativo de Multa Inicial obrigatório">
</h:inputText>
<h:outputLabel id="outIndicativoDeMultaFinal"
value="Indicativo de Multa Final" >
</h:outputLabel>
<h:inputText id="inIndicativoDeMultaFinal"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalMultaFinal}"
required="true"
requiredMessage="Campo Indicativo de Multa Final obrigatório">
</h:inputText>
<br>
<h:outputLabel id="outObservacao"
value="Observação" >
</h:outputLabel>
<h:inputText id="inObservacao"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalObservacao}"
required="true"
requiredMessage="Campo Observação obrigatório">
</h:inputText>
<br>
<h:outputLabel id="outDescricao"
value="Descrição" >
</h:outputLabel>
<h:inputText id="inDescricao"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalDescricao}"
required="true"
requiredMessage="Campo Descrição obrigatório">
</h:inputText>
<br>
<h:panelGroup id="panelGroupEnquadramento">
<h:outputLabel id="outArtigo"
value="Artigo" >
</h:outputLabel>
<h:selectOneMenu id="selArtigo"
value="#{AutoInfracaoAmbientalView.enq.artigo.enquadramentoArtigoCodigo}"
required="false"
requiredMessage="Campo Artigo obrigatório">
<f:selectItem itemValue="" itemLabel="Selecione..."/>
<f:selectItems value="#{AutoInfracaoAmbientalView.retornarArtigo}"/>
</h:selectOneMenu>
<h:outputLabel id="outItem"
value="Item" >
</h:outputLabel>
<h:selectOneMenu id="selItem"
value="#{AutoInfracaoAmbientalView.enq.item.enquadramentoItemCodigo}"
required="false"
requiredMessage="Campo Item obrigatório">
<f:selectItem itemValue="" itemLabel="Selecione..."/>
<f:selectItems value="#{AutoInfracaoAmbientalView.retornarItem}"/>
</h:selectOneMenu>
<h:outputLabel id="outparagrafo"
value="Parágrafo" >
</h:outputLabel>
<h:selectOneMenu id="selParagrafo"
value="#{AutoInfracaoAmbientalView.enq.paragrafo.enquadramentoParagrafoCodigo}"
required="false"
requiredMessage="Campo Parágrafo obrigatório">
<f:selectItem itemValue="" itemLabel="Selecione..."/>
<f:selectItems value="#{AutoInfracaoAmbientalView.retornarParagrafo}"/>
</h:selectOneMenu>
<h:outputLabel id="outInciso"
value="Inciso" >
</h:outputLabel>
<h:selectOneMenu id="inInciso"
value="#{AutoInfracaoAmbientalView.enq.inciso.enquadramentoIncisoCodigo}"
required="false"
requiredMessage="Campo Inciso obrigatório">
<f:selectItem itemValue="" itemLabel="Selecione..."/>
<f:selectItems value="#{AutoInfracaoAmbientalView.retornarInciso}"/>
</h:selectOneMenu>
<h:outputLabel id="outAlinea"
value="Alinea" >
</h:outputLabel>
<h:selectOneMenu id="selAlinea"
value="#{AutoInfracaoAmbientalView.enq.alinea.enquadramentoAlineCodigo}"
required="false"
requiredMessage="Campo Alinea obrigatório">
<f:selectItem itemValue="" itemLabel="Selecione..."/>
<f:selectItems value="#{AutoInfracaoAmbientalView.retornarAlinea}"/>
</h:selectOneMenu>
<h:outputLabel id="outLei"
value="Lei" >
</h:outputLabel>
<h:selectOneMenu id="selLei"
value="#{AutoInfracaoAmbientalView.enq.tipoLei.tipoLeiCodigo}"
required="false"
requiredMessage="Campo Lei obrigatório">
<f:selectItem itemValue="" itemLabel="Selecione..."/>
<f:selectItems value="#{AutoInfracaoAmbientalView.retornarTipoLei}"/>
</h:selectOneMenu>
<a4j:commandButton id="cbAdicionar"
value="Adicionar"
action="#{AutoInfracaoAmbientalView.adicionarEnquadramento}"
reRender="panelGroupEnquadramento" >
</a4j:commandButton>
<rich:dataTable id="dataTable"
var="enq"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalEnquadramentos}"
rowClasses="linha1,linha2"
rows="10"
width="100%">
<f:facet name="header">
<h:outputText value="Enquadramentos" />
</f:facet>
<rich:column>
<f:facet name="header">
<h:outputText value="Artigo" />
</f:facet>
<h:outputText value="#{enq.artigo.enquadramentoArtigoCodigo}" />
</rich:column>
<rich:column>
<f:facet name="header">
<h:outputText value="Item" />
</f:facet>
<h:outputText value="#{enq.item.enquadramentoItemCodigo}" />
</rich:column>
<rich:column>
<f:facet name="header">
<h:outputText value="Parágrafo" />
</f:facet>
<h:outputText value="#{enq.paragrafo.enquadramentoParagrafoCodigo}" />
</rich:column>
<rich:column>
<f:facet name="header">
<h:outputText value="Inciso" />
</f:facet>
<h:outputText value="#{enq.inciso.enquadramentoIncisoCodigo}" />
</rich:column>
<rich:column>
<f:facet name="header">
<h:outputText value="Alínea" />
</f:facet>
<h:outputText value="#{enq.alinea.enquadramentoAlineCodigo}" />
</rich:column>
<rich:column>
<f:facet name="header">
<h:outputText value="Lei" />
</f:facet>
<h:outputText value="#{enq.tipoLei.tipoLeiCodigo}" />
</rich:column>
<rich:column>
<f:facet name="header">
<h:outputText value="Remover" />
</f:facet>
</rich:column>
</rich:dataTable>
<rich:datascroller align="center" for="dataTable" maxPages="10" page="1"
renderIfSinglePage="false"/>
</h:panelGroup>
<br>
<h:outputLabel id="outNNA"
value="Nº N. A." >
</h:outputLabel>
<h:inputText id="inNNA"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalNotificacaoAmbiental.notificacaoAmbientalCodigo}"
immediate="true"
required="false"
requiredMessage="Campo Nº N. A. obrigatório">
</h:inputText>
<br>
<h:outputLabel id="ouCodigo"
value="Código" >
</h:outputLabel>
<h:inputText id="inCodigo"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalCodigoNNA}"
required="true"
requiredMessage="Campo Código obrigatório">
</h:inputText>
<br>
<h:outputLabel id="outDataDoRecebimento"
value="Data do Recebimento" >
</h:outputLabel>
<rich:calendar id="richCalendarRecebimento"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalDataRecebimento}"
datePattern="dd/MM/yyyy"
required="true"
requiredMessage="Campo Data do Recebimento obrigatório">
</rich:calendar>
<br>
<h:outputLabel id="outSubstituicaoDoAIA"
value="Substituição do AIA" >
</h:outputLabel>
<h:inputText id="inSubstituicaoDoAIA"
value=""
required="false"
requiredMessage="Campo Substituição do AIA obrigatório">
</h:inputText>
<br>
<h:outputLabel id="outAutuadoPreposto"
value="Autuado Preposto" >
</h:outputLabel>
<h:inputText id="inAutuadoPreposto"
value="#{AutoInfracaoAmbientalView.labelAutuadaPreposto}"
required="true"
requiredMessage="Campo Autuado Preposto obrigatório">
<a4j:support oncomplete="#{rich:component('mpPessoaAutuadaPreposto')}.show()"
event="onclick"
reRender="mpAutuadaPreposto"
ajaxSingle="true"
focus="inCPFCNPJ">
</a4j:support>
</h:inputText>
<a4j:commandLink id="cbBuscarAutuadoPreposto"
oncomplete="#{rich:component('mpPessoaAutuadaPreposto')}.show()"
reRender="mpAutuadaPreposto"
ajaxSingle="true"
ignoreDupResponses="true"
focus="inCPFCNPJ" >
<h:graphicImage style="cursor:pointer"
value="images/lupa.png" >
</h:graphicImage>
</a4j:commandLink>
<br>
<h:outputLabel id="outTestemunha1"
value="Testemunha 1" >
</h:outputLabel>
<h:selectOneMenu id="selTestemunha1"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalTestemunha1.colaborador.pessoCodigo}"
required="true"
requiredMessage="Campo Testemunha 1 obrigatório">
<f:selectItem itemValue="" itemLabel="Selecione..."/>
<f:selectItems value="#{AutoInfracaoAmbientalView.retornarColaborador}"/>
</h:selectOneMenu>
<h:outputLabel id="outTestemunha2"
value="Testemunha 2">
</h:outputLabel>
<h:selectOneMenu id="selTestemunha2"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalTestemunha2.colaborador.pessoCodigo}"
required="true"
requiredMessage="Campo Testemunha 2 obrigatório">
<f:selectItem itemValue="" itemLabel="Selecione..."/>
<f:selectItems value="#{AutoInfracaoAmbientalView.retornarColaborador}"/>
</h:selectOneMenu>
<h:outputLabel id="outAgenteFiscal"
value="Agente Fiscal" >
</h:outputLabel>
<h:selectOneMenu id="selAgenteFiscal"
value="#{AutoInfracaoAmbientalView.aia.autoInfracaoAmbientalAgenteFiscal.colaborador.pessoCodigo}"
required="true"
requiredMessage="Campo Agente Fiscal obrigatório">
<f:selectItem itemValue="" itemLabel="Selecione..."/>
<f:selectItems value="#{AutoInfracaoAmbientalView.retornarColaborador}"/>
</h:selectOneMenu>
<br>
<a4j:commandButton id="cButtonSalvarRascunho"
value="Salvar Rascunho!"
action="#{AutoInfracaoAmbientalView.salvarRascunho}"
oncomplete="#{rich:component('mpMensagem')}.show()"
reRender="frmPrincipal, mpMensagem">
</a4j:commandButton>
<a4j:commandButton id="cButtonSalvarGerarProcesso"
value="Salvar e Gerar Processo!"
action="#{AutoInfracaoAmbientalView.salvarGerarProcesso}"
oncomplete="#{rich:component('mpMensagem')}.show()"
reRender="frmPrincipal, mpMensagem">
</a4j:commandButton>
</div>
</a4j:form>
</div>
<%@include file="../../include/mpMensagem.jsp"%>
<%@include file="../../include/footer.jsp" %>
<%@include file="mpPessoaAutuada.jsp" %>
<%@include file="mpEndereco.jsp" %>
<%@include file="mpPessoaAutuadaPreposto.jsp" %>
</div>
</f:view>
</body>
</html>