我想从backendBean动态添加h:panelGroup,但不刷新整个父组件。
这是我的代码:
<h:panelGroup layout="block" id="dialogs">
</h:panelGroup>
对于这个panelGroup,我想从backendBean添加其他panelGroup:
public void addPanelGroup() {
RequestContext rc = RequestContext.getCurrentInstance();
doFind(FacesContext.getCurrentInstance(), "dialogs");
HtmlPanelGroup div = new HtmlPanelGroup();
div.setLayout("block");
div.setId(id);
found.getChildren().add(div);
}
private void doFind(FacesContext context, String clientId) {
FacesContext.getCurrentInstance().getViewRoot().invokeOnComponent(context, clientId, new ContextCallback() {
@Override
public void invokeContextCallback(FacesContext context,
UIComponent component) {
found = component;
}
});
}
如果我打电话
RequestContext.getCurrentInstance().update("dialogs")
在addPanelGroup方法结束时它可以工作。但是当我在dialogs
上添加第二个panelGroup时,我必须第二次刷新dialogs
。有没有办法添加新的panelGroup而不刷新整个父panelGroup?
谢谢你的帮助。