Я хочу обработать все <p:panel>
компоненты внутри <h:panelGroup>
в компоненте поддержки.Я связал <h:panelGroup>
с бэк-свойством.Но во время метода @PostConstruct
свойство равно null
.Во время установки свойства setPanel()
компонент не имеет дочерних элементов.Если я отправлю что-нибудь, используя кнопку, я смогу получить детей панели.
Что мне нужно сделать, чтобы получить дочерние компоненты компонента во время метода @PostConstruct
?
Просмотр:
<h:panelGroup binding="#{wiz.panel}">
<p:panel header="one">
<h:outputText value="primeiro" />
</p:panel>
<p:panel header="two">
<h:outputText value="segundo" />
<h:inputText />
</p:panel>
<p:panel header="three">
<h:outputText value="terceiro" />
</p:panel>
<p:panel header="four">
<h:outputText value="quarto" />
</p:panel>
</h:panelGroup>
Бэк-бин
@PostConstruct
public void init() {
if (getPanel() != null) {
for (UIComponent comp : getPanel().getChildren()) {
if (comp instanceof Panel) {
System.out.println(((Panel) comp).getHeader());
}
System.out.println("not a panel child");
}
} else {
System.out.println("panel is null");
}
}