Galera eu tenho a seguinte página:
<h:form>
<h:outputLabel value="Nome: " />
<h:inputText id="edtNome" value="#{crud.pessoa.nome}" required="true" requiredMessage="Nome é obrigatório" />
<h:message for="edtNome" />
<h:commandButton action="#{crud.salvar}" value="Salvar" />
<h:dataTable value="#{crud.listaPessoa}" var="pessoa">
<h:column>
<f:facet name="header">
<h:outputText value="Selecionar" />
</f:facet>
<h:selectBooleanCheckbox value="#{pessoa.selecionado}" immediate="true" />
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="Nome" />
</f:facet>
<h:outputText value="#{pessoa.nome}" />
</h:column>
</h:dataTable>
<h:commandButton action="#{crud.excluir}" value="Excluir" immediate="true" />
</h:form>
Quando eu clico no botão salvar o JSF valida corretamente.
Quando eu marco algum item da lista e clico no Excluir o JSF não valida a página e também não popula o atributo selecionado do meu objeto.
Se eu tirar o immediate=true do botão Excluir com todos os campos preenchidos ele envia o popula o atributo selecionado.
Pergunta tem como fazer o JSF não validar a o required e enviar o atributo selecionado ?