好的,我现在真的被困住了。我有一个h:datatable,获取行详细信息的唯一方法似乎是DataModel#getRowData()。遗憾的是,包装必要数据所需的ListDataModel不可序列化,因此无法在GAE上运行,我真的需要它才能工作!有没有人知道任何变通方法或某种方式使其功能。 非常感谢!
答案 0 :(得分:1)
标记属性transient
(以便在序列化期间跳过它)并在getter中引入延迟加载。
E.g。
private List<Item> itemList;
private transient DataModel<Item> itemModel;
public DataModel<Item> getItemModel() {
if (itemModel == null) {
itemModel = new ListDataModel<Item>(itemList);
}
return itemModel;
}
顺便提一下,有一种方法可以检索当前行。另请参阅How can I pass selected row to commandLink inside dataTable?