1

preRender Fase 中にテーブルをレンダリングしようとしています/レンダリングしないようにしています。私はjDev 10.3.1.4を使用しています

次のように「レンダリング」属性が設定されたテーブルを設定しました。

<af:table binding="#{backingBean.table1}" banding="row"
                rendered="#{backingBean.table1.rendered}">

バッキングビーンで私がやった

protected void onPagePreRender(PagePhaseEvent event) {
     getTable1().setRendered(false);
     AdfFacesContext.getCurrentInstance().addPartialTarget(getTable1());
}

そして、私はエラーが発生し続けますError getting property 'rendered' from bean of type oracle.adf.view.faces.component.core.data.CoreTable

どうすればこれを解決できますか?

4

1 に答える 1

3

属性を削除しrenderedます。基本的に、無限ループで自分自身を参照しています。によって参照されるコンポーネントによってプログラムで既に操作している場合は、必要ありませんbinding

この属性を実際に使用する場合は、次のように使用renderedするのが適切です。

<af:table binding="#{backingBean.table1}" banding="row"
    rendered="#{backingBean.rendered}">

private boolean rendered = true;

protected void onPagePreRender(PagePhaseEvent event) {
    rendered = false;
    AdfFacesContext.getCurrentInstance().addPartialTarget(getTable1());
}

public boolean isRendered() {
    return rendered;
}
于 2011-10-27T13:24:42.697 に答える