문제

JSF 응용 프로그램에서 호출 응용 프로그램 단계에서 UI 구성 요소를 업데이트해야합니다. 할 수 있습니까? 지금까지 생산 한 코드는 다음과 같습니다.

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


        }
    });

}

이 조치 리스너는 DataScroller 구성 요소를 찾고 페이지와 값을 1으로 설정합니다. 불행한 데이터 스크롤러는 1과 다른 페이지를 가지고 있기 때문에 전혀 작동하지 않는 것 같습니다.

내가 뭔가를 놓치고 있습니까?

도움이 되었습니까?

해결책

나는 당신의 상상합니다 resetDataScroller An에 의해 불리는 방법 actionListener 페이지의 명령 버튼/링크 속성?

나는 당신이 무엇을하려고하는지 정말로 이해하지 못합니다 ...이 코드를 작성하기 만하면됩니다. :

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);
}

이 단계에서 HTMLDATASCROLLER의 이러한 특성을 변경하면 마지막 단계에서 JSF가 사용합니다 ( Render Response 단계) HTML 코드를 생성하려면 ...

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top