有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java获取当前行表ADF

我在页面流范围中有数组列表

 List<EtaxDetail> lstEtaxDetail

然后,我把它绑在桌子上

<af:table value="#{pageFlowScope.ABCBean.lstEtaxDetail}">

通过ViewIterator进行绑定时,我使用了以下代码:

 DCIteratorBinding dcIterACCTNO = ADFUtils.findIterator("");
 ViewObject vo = dcIterACCTNO.getViewObject();
 Row cRow = vo.getCurrentRow(); 

如何获取此表中当前选定的行


共 (2) 个答案

  1. # 1 楼答案

        DCBindingContainer bindings = this.getDCBindingContainer();
        DCIteratorBinding itorBinding =
       bindings.findIteratorBinding("XxbecErrConsoleLinesStgView1Iterator");//ur iterator name
        RowSetIterator rsi = itorBinding.getRowSetIterator();
        ViewObject ioOrderLines= itorBinding.getViewObject();
        if(itorBinding!= null){
                Row currentRow = itorBinding.getCurrentRow();
                if(currentRow != null){
               obj=currentRow.getAttribute("InterfaceHeaderId");//ur column name which u want to fetch
               System.out.println(currentRow.getAttribute("InterfaceHeaderId"));
                }}
    

    //并且getDCBindingContainer()方法代码的代码是>

    public DCBindingContainer getDCBindingContainer() {
        DCBindingContainer bindingsContainer =
            (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry(); 
        return bindingsContainer;
    
  2. # 2 楼答案

    您需要在af:table上提供自己的SelectionListener。 伟大的例子可以在herehere中找到