请问jsf中第一次页面显示时,数据什么时候绑定
fourfire
2008-04-10
我在做一个翻页的控件,在datatable下增加
<f:facet name="footer"> <h:panelGrid> <h:commandLink value="首页" styleClass="Link" actionListener="#{ManageBean.firstPage}"> </h:commandLink> <h:commandLink value="上一页" styleClass="Link" actionListener="#{ManageBean.lastPage}"> </h:commandLink> <h:commandLink value="下一页" styleClass="Link" actionListener="#{ManageBean.nextPage}"> </h:commandLink> <h:commandLink value="末页" styleClass="Link" actionListener="#{ManageBean.endPage}"> </h:commandLink> <h:outputText value="共计#{ManageBean.otherDataModel.rowTotalCount}条记录" /> <h:outputText value="第#{ManageBean.otherDataModel.currentPage+1}页/共#{ManageBean.otherDataModel.pageCount}页" /> <h:commandLink value="导出" styleClass="Link" actionListener="#{ManageBean.exportExcel}"> </h:commandLink> </h:panelGrid> </f:facet> 我在render中获得数据,但是第一次打开页面时总记录数为0.点翻页就ok了 我猜想是显示footer的时候,记录数还未得到。我在encodeBegin中获得数据 请问:在什么方法中获得数据,可以保证在footer渲染前调用? |
|
dr.han
2008-04-10
页面初始化的时候,JSF首先会调用业务manageBean的属性的get/set方法,而这时你的数据List是空的,所以没有数据
建议你在页面开始先查询数据,或者把查询数据的方法写到你一个属性的get方法中即可 |
|
glacier3
2008-04-10
我觉得没有必要使用JSF了,除非一些其他的情况, 不使用是最好的解决办法
|
|
rockjava
2008-04-11
在造车轮子
|
|
fourfire
2008-04-11
谢谢大家,我试试
|
|
fourfire
2008-04-11
有个问题,我的查询条件没办法传递到bean里了,有什么办法知道bean绑定的哪个datatable吗?
|
|
fourfire
2008-04-11
我想在页面中为backbean的属性赋值,在xml里的值在运行期发生改变了
|
|
fourfire
2008-04-11
设置了,但是在页面里想把缺省值改掉
|
|
fourfire
2008-04-11
是开发者修改,这样就不用写很多managebean了
|
|
fourfire
2008-04-11
对的,就是这个意思,一个bean,可以给他不同的参数,表现不同的特性
|