JSF - Update Modell in invoke Bewerbungsphase
-
12-09-2019 - |
Frage
in meiner JSF-Anwendung benötigen i ui Komponente während invoke Bewerbungsphase zu aktualisieren. Es kann getan werden? Hier ist der Code, den ich produziert habe, so weit:
public void resetDataScroller(ActionEvent actionEvent) {
final FacesContext ctx = FacesContext.getCurrentInstance();
ctx.getViewRoot().invokeOnComponent(ctx, "paginator_and_table:scroll_1", new ContextCallback() {
public void invokeContextCallback(FacesContext facesContext, UIComponent uiComponent) {
HtmlDatascroller htmlDatascroller = (HtmlDatascroller) uiComponent;
htmlDatascroller.setPage(1);
htmlDatascroller.setValue(1);
}
});
}
Diese Aktion Hörer nachschlägt dataScroller Komponente und setzt Seite und Wert auf 1. Unfortunatelly scheint es gar nicht zu arbeiten, weil gerendert dataScroller Seite anders als 1 hat
Bin ich etwas fehlt?
Lösung
Ich stelle mir vor, dass Ihr resetDataScroller
ein Verfahren durch ein actionListener
Attribut eines Befehlstaste / Link auf Ihrer Seite mit dem Namen?
ich nicht wirklich verstehen, was Sie zu tun versuchen ... Haben Sie müssen nur diesen Code schreiben? :
public void resetDataScroller(ActionEvent evt) {
final FacesContext ctx = FacesContext.getCurrentInstance();
HtmlDatascroller htmlDatascroller = (HtmlDatascroller) ctx.getViewRoot().findComponent("paginator_and_table:scroll_1");
htmlDatascroller.setPage(1);
htmlDatascroller.setValue(1);
}
Wenn Sie diese Eigenschaften des HtmlDatascroller während dieser Phase ändern, werden sie von JSF in der letzten Phase verwendet werden (die Render Response
Phase) Ihren HTML-Code zu generieren ...