woodstock的table2本身是具有排序功能的,但是由于使用过程中存在bug所以很多时候搞不定这个怪物。
那么正确配置table2的步骤是按下面来做(自以为正确,呵呵)
以ObjectListDataProvider为例,List<History> list=null;
ObjectListDataProvider provider=new ObjectListDataProvider();
History中有consumeId,consumeDate等字段
- 首先拖表到页面
- 转Java代码,进入_init()代码段中
- 插入provider.setObjectType(History.class);
- provider.setIncludeFields(true);
- provider.setList(list);这样数据源算是有了,下面是容易出错的地方了
- 编译一下
- 打开表布局
- 如果为那个list设置了set、get方法的话对后面的工作有利了,首先设置数据提供器,这时我们不直接选择provider,而是选择list,因为你选择了provider 后什么都不会出现在选中的框中,实际上里list跟provider的字段设置是一样的,设置好每个字段的属性,对应字段勾上sort复选框,点击确定退出。在这里特别要指出的是,最好别先设置Option选项卡,一旦设置很可能造成不能排序的后果,这个问题我搞了好几天,特别感谢叫miss..网友的帮助,提供了很多有用的建议和指导。
- 然后打开JSP代码,修改datasource为provider而不是list,要搞清楚provider和list的路径,页面的话一般都要带上文件夹名字(除非你在应用根目录)和页面类名,一般格式是<目录名>$<页面文件名><.provider|list|any datasource>
- 保存就可以了,希望不要忘了什么,希望对碰到类似问题的朋友有帮助,特别有价值的是在第8条上
- 另外在第八条要补充的是如果headtext要使用绑定的话在每次使用tablelayout时修改为“#{}”,否则绑定就失效了,原因是被替换成被显示的内容了
- 晚安