f: setPropertyActionListener no establece el valor, sin embargo, la acción se activa

Necesito establecer un campo booleano cuandop:fieldset está alternado Probé el siguiente código, pero el campo nunca se establece mediante f: setPropertyActionListener, aunque se invoca el escucha p: ajax en la alternancia. Probé siguiendo el código.

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

Sin embargo, cuando intenté modificar el código como se muestra a continuación, el campo se establece correctamente:

    <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>

Quiero preguntar:

¿Por qué la 1ª manera no funciona?¿Es malo unir múltiples?p:ajax&nbsp;a los padres solteros como se hace en 2ª manera?