adf框架学习笔记

 
DCIteratorContainer\DCIteratorBindingDCIteratorBinding iter = ADFUtils.getDCBindingContainer().findIteratorBinding("OrderListView1Iterator")
ADFUtils中封装了getDCBindingContainer这个方法可以获取DCTeratorContainer,
然后再使用DCIteratorContainer的findIteratorBinding方法获取具体的viewIterator,
这个viewIterator在页面配置文件pagedef中有定义,是从数据源datacontrol中拖到页面上时在页面配置文件中生成的
DCIteratorBindingDCBindingContainer container=BindingContext.getCurrent().findBindingContainer(pageDefUsageId)
DCIteratorBinding d=
container.findIteratorBinding("PartOrderPartView2Iterator")
ADFUtils中封装的fingIterator方法 ADFUtils.findIterator("com_jerehsoft_view_orderListPageDef","OrderListView1Iterator").getViewObject()
RowViewObject vo;
Row curRow = vo.getCurrentRow();
getCurrentRow()是RowIterator接口中的方法  ViewObject继承了RowIterator接口
获取pageFloworacle.adf.view.rich.context.AdfFacesContext.getCurrentInstance().getPageFlowScope().get("popName")
好像是在配置manageBean或者在给taskFlow添加参数的时候要设置一个作用域,设置好了这个作用域就可以从相应的作用域中取得他们的值。
AdfFacesContext.getCurrentInstance()返回的是一个AdfFacesContext
DCIteratorBindingDCIteratorBinding iteratorVO = (DCIteratorBinding)ADFUtils.findIterator("PartView1Iterator")
通过DCIteratorBinding获取ViewObjectViewObject vo=iteratorVO.getViewObject()
通过在VO里边设置一个isSelected属性,拖到页面上,然后就可以在后台backing bean里边得到页面上vo的所有行,当然包括添加的isSelected属性,然后判断每一行的isSelected属性是否选中是true,如果是,则添加到selectRows里边            public static ArrayList getMultSelectInVo(ViewObject vo) {
        //              System.out.println("getMultSelectInVo : " + vo + "/" + vo.getRowCount());
        ArrayList selectRows = new ArrayList();
        RowSetIterator rsi = vo.createRowSetIterator(null);
        Row row;
        while ((row = rsi.next()) != null) {
            boolean temp=(Boolean)row.getAttribute("isSelected");
            if (row.getAttribute("isSelected") != null && (Boolean)row.getAttribute("isSelected")) {
                selectRows.add(row);
                //                              System.out.println("    >> row");
                //                              for (String s : row.getAttributeNames()) {
                //                                      System.out.printf("     %s - %s\n", s, row.getAttribute(s));
                //                              }
            }
        }
        rsi.closeRowSetIterator();
        return selectRows.size() == 0 ? null : selectRows;}
RowSetIteratorRowSetIterator rsi = vo.createRowSetIterator(null)
Row row=rsi.next()
createRowSetIterator()是RowSet接口中的方法,viewObject继承了这个接口
获取一个类或者接口中的所有方法 Method[] methods = detailObj.getClass().getDeclaredMethods()
可以再methods.getName()来获取具体方法的名称
methods[i].invoke(Object obj, Object... args)方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值