Olás,
Tenho um autocomplete, que uma vez que um item dele é selecionado, o usuário deve clicar no botão btn_selecionar_fiscal_envolvido para atualizar um panel com vários campos. Ocorre que ao clicar no botão e atualizar o panel, um campo (select_grau_envolvimento_fiscal) que está fora do panel e está como required=“true” é validado. Preciso ter este campo como required, porém preciso do ajax nesta tela também… Tenho mudar o escopo do MB para @ViewScoped, mas ocorre o mesmo problema. Segue código:
<p:dialog header="Cadastro de Fiscal"
widgetVar="dlg_cadastrar_fiscal_envolvido" modal="true"
resizable="false">
<h:form id="frm_cadastro_fiscal_envolvido" prependId="false">
<p:fieldset legend="Filtro">
<h:panelGrid columns="2" cellpadding="2">
<h:outputText value="Digite o nome do Fiscal para pesquisa:" />
<h:outputText />
<p:autoComplete id="auto_complete_fiscal_envolvido"
value="#{fiscalEnvolvidoBean.fiscalSelecionado}"
completeMethod="#{fiscalEnvolvidoBean.completaNomeFiscal}"
minQueryLength="2" queryDelay="400" forceSelection="true"
var="fiscal" itemLabel="#{fiscal.pessoaFisica.pessoa.nome}"
itemValue="#{fiscal}" size="72"
title="#{msg.aie_tooltip_autocomplete_municipio}"
converter="fiscalConverter" />
<p:commandButton id="btn_selecionar_fiscal_envolvido" value="Selecionar" update="panel_fiscal_envolvido" />
</h:panelGrid>
</p:fieldset>
<br />
<p:fieldset legend="Fiscal Envolvido">
<h:panelGrid id="panel_fiscal_envolvido" columns="8" cellpadding="2">
<h:outputText value="Nome:" />
<p:inputText id="input_nome_fiscal" value="#{fiscalEnvolvidoBean.fiscalSelecionado.pessoaFisica.pessoa.nome}" disabled="true" style="width: 220px;" />
<h:outputText value="Matrícula:" />
<p:inputText id="input_matricula_fiscal" value="#{fiscalEnvolvidoBean.fiscalSelecionado.matricula}" disabled="true" style="width: 90px;" />
<h:outputText value="CPF:" />
<p:inputText id="input_cpf_fiscal" value="#{fiscalEnvolvidoBean.fiscalSelecionado.pessoaFisica.cpf}" disabled="true" style="width: 90px;" />
<h:outputText value="Nº Portaria Designação:" />
<p:inputText id="input_portaria_fiscal" value="#{fiscalEnvolvidoBean.fiscalSelecionado.sequenciaPortaria}" disabled="true" style="width: 90px;" />
</h:panelGrid>
<h:panelGrid columns="2" cellpadding="2">
<h:outputText value="Grau de Envolvimento: *" />
<p:selectOneMenu id="select_grau_envolvimento_fiscal" value="#{fiscalEnvolvidoBean.grauEnvolvimentoSelecionado}"
required="true" requiredMessage="Grau de Envolvimento: #{msg.aie_campo_obrigatorio}" converter="grauEnvolvimentoConverter" style="width:286px;">
<f:selectItem itemLabel="#{msg.aie_opcao_combo_selecione}" itemValue="" />
<f:selectItems value="#{fiscalEnvolvidoBean.grauEnvolvimentoSelect}" />
</p:selectOneMenu>
</h:panelGrid>
<h:panelGrid columns="1" cellpadding="2">
<h:outputText value="Observação:" />
<p:inputTextarea id="input_textarea_observacao_fiscal_envolvido" value="#{fiscalEnvolvidoBean.envolvido.descricao}" style="width:850px;height:68px;" effectDuration="400" />
</h:panelGrid>
</p:fieldset>
<br />
<div align="center">
<p:commandButton id="btn_salvar_fiscal_envolvido" type="submit" action="#{fiscalEnvolvidoBean.salvar}" update=":tab_view_acao_fiscalizatoria:frm_lista_efetivo_acao_fiscalizatoria" oncomplete="dlg_cadastrar_fiscal_envolvido.hide();" value="Salvar" />
<p:commandButton id="btn_limpar_fiscal_envolvido" type="reset" value="Limpar">
<p:ajax update="frm_cadastro_fiscal_envolvido" />
</p:commandButton>
</div>
</h:form>
</p:dialog>