JSF: Seite neu Laden, nachdem die Daten ändern

Mit einem DataModel<MyObject>, ich fülle eine Tabelle mit Daten nach diese Antwort

Nun am Ende jeder Zeile habe ich eine löschen-Taste, die Anrufe, die eine bestimmte Methode, meine Bohne. Die Daten sauber gelöscht. Aber wie die Daten, die geändert wurde, nachdem das löschen, ich möchte die Seite neu laden, um die änderungen widerzuspiegeln.

Mein Versuch war es, fügen Sie ein navigation-rule in faces-config.xml:

übersicht
/übersicht.jsp

deletedsubscription
/übersicht.jsp

Wenn ich <redirect /> oder nicht, so oder so ist es nicht nachladen oder etwas anderes zu tun überhaupt. Die Daten werden gelöscht, daher die bean die Methode tatsächlich aufgerufen wird.

Mein button sieht so aus:

<h:dataTable border="1" value="#{overviewBean.overviewModel }" var="item" first="0">
    <h:column id="column13">
        <f:facet name="header">
            <h:outputText value="#{messages.overviewDeleteItem }"></h:outputText>
        </f:facet>
        <h:commandButton action="#{overviewBean.deleteItem}" value="X"/>
    </h:column>
</h:dataTable>

Einstellung das Attribut type="submit" löst tatsächlich das problem. Die Seiten bekommt reloaded.

Meine Frage ist nun: ist der submit-wirklich erforderlich? Nicht, JSF (Apache MyFaces) haben einen Mechanismus der Verwendung von AJAX zu beseitigen, die Zeile einfach gelöscht?

Danke für den Versuch zu helfen, eine JSF-Neuling.

Schreibe einen Kommentar