如何在主页中刷新表格,并在弹出窗口中使用ADF 11GR1关闭弹出窗口



我已经在区域中创建了一个弹出窗口的主页(jspx构建)。在弹出窗口中,我试图搜索某些值的值,我希望它通过单击按钮将这些Arraylist值发送到主页。

我能够通过从弹出bean调用上下文事件并在主页bean中处理事件来实现上述要求。两个豆都在PageFlow范围中。

主表与可维护的可维持富含曲折的绑定和弹出式绑定到弹出式richpopup,这是在mainpagebean中定义的。

现在在主页bean中,如果我试图关闭弹出窗口并通过句柄上下文事件刷新表,我无法做到这一点,因为它会丢弃弹出式弹出式弹出式弹出和可维护的插件,因此无法执行此操作。存在。解决此问题的任何帮助。

通常,我不喜欢将UI对象绑定到bean,而是使用bean中的jsfutils查找组件。如果您没有JSFUTILS(和ADFUTILS)类,则应该可以通过简单的Web搜索找到。

然后从主页bean您可以做以下操作:

RichPopup pop = (RichPopup)JSFUtils.findComponentInRoot("popupid");
if (pop != null) { 
   pop.hide();
}

请注意,在某些情况下,您还需要在通过ID定位组件时指定区域ID,例如,当您在每个区域中有相同弹出式的主页中有许多区域时。例如,使用Chrome" Inspect"来获取弹出窗口的ID,其中将包括区域ID前缀。

您可以使用类似方法刷新表:

ADFFacesContext.getCurrentInstance().addPartialTarget(JSFUtils.findComponentInRoot("tableId"));

关键是要获得此方法的JSFutils和Adfutils库的副本。

最新更新