首页 > 解决方案 > 包含另一个 panelgroup 最佳实践的 PanelGroup

问题描述

我有几个问题都与如何在另一个小组组中实施小组组有关。我有一个主面板组,它运行良好,没有问题。在它的一个“面板”中,它包含另一个面板组,我们可以称之为子面板组,如下所示。

主面板

问题;使用“面板”的绝对路径“静态”添加子面板组有效,但“以编程方式”添加子面板组它不会显示并且不会引发任何错误。换句话说,我需要使用“以编程方式”添加子面板组

 <ui:include src="#{backingBean.panel}" />

代替

<ui:include src="/Webpages/file/someWhere/panel.xhtml" />

显而易见的原因是因为我需要使用backingBean显示面板组内的其他隐藏“面板” 。此外,我的backingBean有方法init()setPanel()都拒绝在 html/jsf 代码中工作。

我的backingbean类

@ManagedBean
@SessionScoped
@Named(value = "ganttNavBean")
public class GanttNavigatorBean implements Serializable {

 private String schedule;
 String includedPagex ;
 //private String logoPage = "logoPage.xhtml";

 @PostConstruct
 public void init() {
     schedule = "/testpage.xhtml";
      //  Default include.
 }

 // +getter+setter.

public String getPage() {
    return schedule;
}

public void setPage(String schedule) {
    //VisibilityUtils vutils = new VisibilityUtils(page);
    this.schedule = schedule;
}    
}

让我的子面板显示的最佳方式是什么?

我什么时候使用过init()。直接进入我的 html/jsf 代码?

是否可以使用setPanel()。在子面板中的命令按钮中更改子面板内容?(是的,我知道按钮也会消失,这就是我需要的)。

标签: jsfprimefaces

解决方案


推荐阅读