Jsf 为什么ADF中的表组件在绑定到value属性的方法上多次迭代
在我的ADF项目中,JSF页面上有一个表组件,其值属性绑定到托管bean中的方法,该方法返回列表类型对象。我可以在表中显示数据,但我可以看到该方法被执行多达22次!为什么要多次调用该方法?当我们通过数据控制公开业务组件时,是否也会发生同样的情况?短暂性脑缺血发作 编辑:JSPX代码:Jsf 为什么ADF中的表组件在绑定到value属性的方法上多次迭代,jsf,oracle-adf,Jsf,Oracle Adf,在我的ADF项目中,JSF页面上有一个表组件,其值属性绑定到托管bean中的方法,该方法返回列表类型对象。我可以在表中显示数据,但我可以看到该方法被执行多达22次!为什么要多次调用该方法?当我们通过数据控制公开业务组件时,是否也会发生同样的情况?短暂性脑缺血发作 编辑:JSPX代码: <af:table var="row" rowBandingInterval="1" autoHeightRows="10"
<af:table var="row" rowBandingInterval="1"
autoHeightRows="10"
binding="#{backingBeanScope.backing_ForEachExample.t2}"
id="t1" partialTriggers=":::cb1"
styleClass="AFStretchWidth"
value="#{backingBeanScope.backing_ForEachExample.test2}">
<af:column sortable="false" headerText="col1" id="c3">
<af:outputText value="#{row}" id="ot2"/>
</af:column>
</af:table>
Bean方法是:
public List<String> gettest2(){
/* Unique values are derived */
List<String> tab=new ArrayList<String>();
for(String s:uniqueValues){
System.err.println("? Unique Value is : "+s);
tab.add(s);
}
return tab;
}
public List gettest2(){
/*将导出唯一值*/
列表选项卡=新建ArrayList();
用于(字符串s:唯一值){
System.err.println(“?唯一值为:“+s”);
表3.添加(s);
}
返回选项卡;
}
当您使用ADF BC时,通过数据控件在AM中显示VO中的数据,您可以指定VO调优属性,该属性确定在一次往返过程中从数据库中获取的记录数。这是以批次命名的。您可以指定迭代器的范围大小,以与一次从数据库中获取的记录数以及需要在UI的表中显示的记录数同步。af:table有一个名为fetchSize的属性,如果您将该属性设置为等于迭代器范围大小(比如20)的某个值,并且VO>Tuning>in batches of=20,它将只查询一次。默认情况下,批次中的VO等于1,在这种情况下,如果显示autoheightrows=20的表,在这种情况下,表将从数据库中多次查询数据