Chinaunix首页 | 论坛 | 博客
  • 博客访问: 203937
  • 博文数量: 51
  • 博客积分: 2505
  • 博客等级: 少校
  • 技术积分: 595
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-20 16:59
文章分类

全部博文(51)

文章存档

2010年(5)

2009年(39)

2008年(7)

我的朋友

分类:

2010-07-20 14:20:46

ViewObject有多种query mode:ViewObject.QUERY_MODE_SCAN_DATABASE_TABLES,ViewObject.QUERY_MODE_SCAN_VIEW_ROWS

在设置了一种query mode的时候,绑定到RichTable的ViewObject的默认排序可能会失效,我们可以这样操作。

1,在manage bean中添加sort method:


public void sortMethod(SortEvent event){
        DCIteratorBinding iter = ADFUtils.findIterator("xxxxVOIterator");

        String propery = event.getSortCriteria().get(0).getProperty();
        String isAsending =
            event.getSortCriteria().get(0).isAscending() == true ? "asc" : "desc";

        ViewObject vo = iter.getViewObject();
        vo.setSortBy(propery + " " + isAsending);
        vo.setQueryMode(ViewObject.QUERY_MODE_SCAN_VIEW_ROWS);
        vo.executeQuery();
        vo.setSortBy(null);
        //去除排序基准

        SortCriteria[] sc = new SortCriteria[0];
        iter.applySortCriteria(sc);
    }


2,在RichTable中添加sort listener
          sortListener="#{backing_xxx.sortMethod}"
          .....


阅读(1065) | 评论(0) | 转发(0) |
0

上一篇:Name Game

下一篇:[ADF]页面重定向

给主人留下些什么吧!~~