f: setPropertyActionListener не устанавливает значение, однако действие запускается

Мне нужно установить логическое поле всякий раз, когдаp:fieldset переключается Я опробовал следующий код, но поле никогда не устанавливается с помощью f: setPropertyActionListener, хотя прослушиватель p: ajax вызывается при переключении. Я опробовал следующий код.

    <p:fieldset legend="(Optional) Link.." toggleable="true">
        <p:ajax event="toggle" listener="..">
            <f:setPropertyActionListener target="#{viewScope.rendrUsrProjctsList}" value="#{true}"/>
        </p:ajax>
    </p:fieldset>

Однако, когда я попытался изменить код, как показано ниже, поле было успешно установлено:

    <p:fieldset legend="(Optional) Link.." toggleable="true">
        <p:ajax event="toggle" listener="#{view.viewMap.put('rendrUsrProjctsList', true)}" />
        <p:ajax event="toggle" listener=".."/>
        </p:ajax>
    </p:fieldset>

Я хочу спросить:

Почему 1-й способ не работает?Это плохо, прикрепляя несколькоp:ajax для одного из родителей, как это сделано во втором способе?

Ответы на вопрос(1)

Ваш ответ на вопрос