outputpanel (primefaces 3.4.1) には binding 属性があります
<p:outputPanel layout="block" autoUpdate="true" binding="#{bean.outputPanel}"/>
bean htmlInputText で動的に作成され、outputpanel に添付されます
Outputpanel Getter メソッド
private OutputPanel outputPanel=new OutputPanel();
public final OutputPanel getOutputPanel() {
outputPanel = (OutputPanel) app
.createComponent(OutputPanel.COMPONENT_TYPE);
return outputPanel;
}
htmlInputText バインディング
outputPanel.getChildren().add(new HTMLInputText());
これはinputtextを完全に生成しますが、inputtextを作成した後、ページを更新すると消えてしまいます。outputpanel コンポーネントを更新すると、Ajax リクエストでも消えてしまいます。