1

我已经实现了下面的重复视图代码

DataView documents = new DataView("documents", dataProvider, new Long(20)) {
   @Override
   protected void populateItem(Item item) {
   //do some code
};

当我调试代码时,调试点不在 populateItem 方法内部,而 dataprovider 具有文档列表并实现 Idataprovider 接口,因此没有填充数据。

之后我们已经将应用程序从 wicket 1.3 移到 1.7 之后,我们遇到了这个问题。

我不知道为什么它会这样。

4

1 回答 1

-1

经过这么多调试,我得到了解决方案。问题是检票口迁移。

早些时候我们使用的是 wicket 1.3,在这个版本IDataProviderIterator<? extends T> iterator(int first, int count);,现在 wicket 1.7 更改了,Iterator<? extends T> iterator(long first, long count);所以我们用值覆盖了这个方法,return null;这就是我们在数据提供者中得到 null 的原因。

于 2018-04-25T11:31:53.940 回答