2011-09-29 75 views
0

我在会话外观上创建了一个方法,该方法返回一个自定义实体集合。 我在本地界面发布它。 我将相应的数据控件迭代器绑定到ADF表。 运行时,它显示“没有要显示的数据”。 weblogic控制台中没有例外。将自定义实体集合绑定到ADF表

public List<Users> getCollection() { 
    List<Users> l = new ArrayList<Users>(); 
    Users u = em.find(Users.class, new BigDecimal(999)); 
    System.out.println(u.getName()); 
    l.add(u); 
    return l; 
} 

当我通过另一种方法调用此方法,结合到ADF按钮, 所有的罚款虽然。 用户名被打印到weblogic控制台。

public int printCollectionSize() { 
    return getCollection().size(); 
} 

当我绑定到一个ADF表从(自动生成的)方法getUsersFindAll创建的数据控制迭代器,所有是没关系。

public List<Users> getUsersFindAll() { 
    return em.createNamedQuery("Users.findAll").getResultList(); 
} 

我完全失去了。我的方法永远不会被数据绑定系统执行吗?它有什么问题?

回答

0

在ADF中,JSP页面中的所有代码和绑定都是ADF使用的属性值,当它开始自动生成代码以链接JSP和后台bean时,ADF会使用这些属性值。首先,我不确定(尽管我不是专家),您是否可以轻松地将ADF组件绑定到任何集合。

最好的选择是找到一种方法,直接在早期调用方法,确保集合已被初始化,然后刷新表格。也许使用全新刷新的命令按钮,所以你不必担心任何PPR怪异。