在 ADF 中以编程方式重定向到同一任务流的另一个视图
Redirect to another view on the same taskflow programatically on ADF
我有一个任务流并有两个视图,如下图所示:
我有一个去那里的按钮,但我不需要点击按钮。我需要通过调用操作以编程方式重定向到另一个视图。
怎么调用呢,因为我是用JSFF做页面的?
如果我用这个方法:
FacesContext fctx = FacesContext.getCurrentInstance();
UIViewRoot root = fctx.getViewRoot();
//client Id of button includes naming container like id of region.
RichCommandButton button =
(RichCommandButton) root.findComponent("cb1");
ActionEvent actionEvent = new ActionEvent(button);
actionEvent.queue();
}
我收到类似找不到组件的错误。如果我使用页面模板 ID,我也会收到编译器找不到组件的错误。
你有其他方法解决这个问题吗,或者如果我找不到组件你能修复它吗?
对于这种情况,我使用此代码:
public static void navigateTo(String redirect) {
FacesContext facesContext = FacesContext.getCurrentInstance();
NavigationHandler nh = facesContext.getApplication().getNavigationHandler();
nh.handleNavigation(facesContext, null, redirect);
}
其中重定向参数是流程案例规则的名称。
您已使用 "URL view" 并将其重定向到您的路径:
我有一个任务流并有两个视图,如下图所示:
我有一个去那里的按钮,但我不需要点击按钮。我需要通过调用操作以编程方式重定向到另一个视图。
怎么调用呢,因为我是用JSFF做页面的?
如果我用这个方法:
FacesContext fctx = FacesContext.getCurrentInstance();
UIViewRoot root = fctx.getViewRoot();
//client Id of button includes naming container like id of region.
RichCommandButton button =
(RichCommandButton) root.findComponent("cb1");
ActionEvent actionEvent = new ActionEvent(button);
actionEvent.queue();
}
我收到类似找不到组件的错误。如果我使用页面模板 ID,我也会收到编译器找不到组件的错误。
你有其他方法解决这个问题吗,或者如果我找不到组件你能修复它吗?
对于这种情况,我使用此代码:
public static void navigateTo(String redirect) {
FacesContext facesContext = FacesContext.getCurrentInstance();
NavigationHandler nh = facesContext.getApplication().getNavigationHandler();
nh.handleNavigation(facesContext, null, redirect);
}
其中重定向参数是流程案例规则的名称。
您已使用 "URL view" 并将其重定向到您的路径: