我想知道如何以编程方式设置从我的支持bean中选择的ExtendedDataTable中的行。我需要在我的网络应用中编辑用户。用户有一些角色所以我想要的是,当加载页面时,在extendedDataTable中选择了用户拥有的组。
我正在使用带有JSF 2和richfaces 4的Spring3。
我认为我需要将表绑定到请求范围内的支持bean。我可以使用Spring请求范围吗?之后我需要在数据表上实现walk()。我不知道从那里去哪里,有人可以指出我正确的方向或给我一个例子吗?
此致
德克
答案 0 :(得分:1)
这是我的一段代码。这有效,我看到“rowdata等于对象”的日志语句,但现在我需要对“选择”行说,但据我所知,没有一种方法......我怎么能做到这一点?
public void selectRows(){
Collection<Object> s = new ArrayList<Object>(getGroups());
log.debug("set the selection to the table");
table.getTable().walk(FacesContext.getCurrentInstance(), new DataVisitor() {
@Override
public DataVisitResult process(FacesContext context, Object rowKey,
Object argument) {
log.debug("entered walk");
Collection<Object> selection = (Collection<Object>) argument;
for(Object o : selection){
table.getTable().setRowKey(rowKey);
if(table.getTable().getRowData().equals(o)){
log.debug("rowdata equals object");
table.getTable().getSelection().add(o);
log.debug("size of selection is: " + table.getTable().getSelection().size());
}
}
table.getTable().setRowKey(rowKey);
return null;
}
}, s );
}