Есть ли способ узнать, какие компоненты были обновлены после действия

При программировании в JSF 2.2 я иногда не уверен, что update Сработало заявление или нет. Например, у меня есть таблица ниже, и я хочу, чтобы она обновлялась при нажатии кнопки:

<h:form id="theform">

    <h:panelGroup id="entity">

        <p:dataTable
            var="item"
            tableStyle="width:auto"
            styleClass="tableFillRight"
            value="#{artistEntityBean.asList}"
            id="table">

            <p:column headerText="Name">
                <h:outputText value="#{item.name}" styleClass="tableArtistName" />
            </p:column>

            <f:facet name="footer">

                <h:panelGroup id="footerWrapper">

                    <p:commandButton
                        id="requestMod"
                        partialSubmit="true"
                        process="@this"
                        value="become moderator"
                        update="@parent :messages"
                        disabled="#{moderatorEntityBean.item.moderatingArtist}"
                        actionListener="#{moderatorEntityBean.handleCreate()}"
                        action="#{artistEntityBean.init()}">                            
                    </p:commandButton>

                </h:panelGroup>

            </f:facet>

        </p:dataTable>

    </h:panelGroup>

</h:form>

Как ID кнопки theForm:table:requestMod я думал так update="@parent" должно сработать. Однако, похоже, что оно не обновляется, или, может быть, я допустил ошибку где-то в компоненте поддержки или где-то еще?

Дело в том, что я не сейчас. Таким образом, чтобы определить, в чем заключается ошибка, было бы здорово как-то действительно убедиться, что update часть commandButton работал.

Как и сейчас, при нажатии кнопки измененное значение обновляется только после перезагрузки страницы.

1 ответ

Использование Firebug или аналогичный плагин для браузера для мониторинга сети и проверки ответа от сервера. Если компонент (например, clientId=component_client_id) обновлен, вы увидите что-то вроде этого:

<?xml version='1.0' encoding='UTF-8'?>
<partial-response id="j_id1">
    <changes>
        <update id="component_client_id">
            <![CDATA[
                ... component's HTML code ...
            ]]>
         </update>
        <update id="j_id1:javax.faces.ViewState:0">
             <![CDATA[-74243231543289530:-219780152641895389]]>
        </update>
    </changes>
</partial-response>
Другие вопросы по тегам