Condicionalmente, faça as entradas necessárias dependendo do valor da caixa de seleção

Na minha página JSF, eu tenho uma caixa de entrada de entrada HTML onde permite aos usuários escolher se querem ou não o presente, e o<div> A seção sob as informações da caixa de seleção será exibida apenas se a caixa de seleção estiver marcada. Quando a caixa de seleção estiver marcada, os usuários precisarão selecionar uma opção (a partir de um menu suspenso, valor inicial do menu suspenso = nulo); no entanto, a seleção não é necessária se a caixa de seleção não estiver marcada.

Então, aqui vem duas condições:

A. A caixa de seleção está marcada (== a visualização div é reproduzida)

usuário escolhe uma opção -> ok

o usuário não seleciona nada -> Eu quero que a mensagem requerida seja exibida, e é isso que eu fiz:

<p:message style="margin: 10px" id="messages7" for="npsScoreSupport" />
<h:selectOneMenu id="npsScoreSupport" value="#{npsBean.supportScore}" required="true" requiredMessage="Please select an option">
    <f:selectItems value="#{npsBean.ratingPickList}" />
</h:selectOneMenu>

B. A caixa de seleção está desmarcada (== a visão div está oculta)

Usuário não seleção nada -> tudo bem, mas a página ainda requer que os usuários escolham uma opção como eu tenho o required = "true".

Como eu preciso do requireMessage para ter certeza de que uma opção é escolhida quando a caixa de seleção estiver marcada, estou querendo saber se é possível tornar a condicional requireMessage baseada no estado da caixa de seleção? (requer quando a caixa de seleção está marcada e não é necessária quando desmarcada) alguma sugestão?

============ atualizado ======================

Então agora eu atualizei minha caixa de seleção e conectei com uma função na classe JAVA (variável booleana check = true como padrão)

<h:selectBooleanCheckbox class="someClass" value="#{someBean.check}" />

E aqui está meu seletor

<h:selectOneMenu id="OptSelector" value="#{someBean.Opt}" required="#{someBean.check}" requiredMessage="Please select and option">
                                                <f:selectItems value="#{npsBean.OptPickList}" />

O envio falhou mesmo quando a caixa de seleção está desmarcada, parece que a verificação booleana nunca muda. Alguém sabe por quê?

questionAnswers(1)

yourAnswerToTheQuestion