【发布时间】:2013-05-07 14:04:40
【问题描述】:
重要修改:我为情况添加了一个深度级别,以更好地反映我的问题。
我有一个 GXT Grid 和一个特定类型的 ListStore Foo。 Foo 恰好有一些重要的对象属性,包括Bar 类型之一。 Bar 类型由两个对象属性组成:fooFoo 类型为 FooFoo 和 barBar 类型为 Barbar。这两个可以是null,并且有一个String 属性description。
我想使用 GXT 网格的过滤功能通过 Bar 值的 FooFoo 或 BarBar 描述过滤 Foo 对象记录。
我尝试将ValueProvider<Foo, String> barDescription(); 添加到FooProperties,结果是:
StringFilter<Foo> barbarFilter = new StringFilter<Foo>(fooProps.barbarDescription());
其中Foo#getBarBarDescription()实现如下:
public String getBarBarDescription() {
return this.getBar().getBarBar().getDescription();
}
是否有一种简单/方便的方法可以在 GXT 中实现此行为?没找到。
我上面描述的实现是我尝试过的,但是过滤器根本没有显示在网格中,没有更多的错误消息。
针对 Colin 对我之前版本问题的回答,我尝试了以下方法:
@Path("bar.barbar.description")
ValueProvider<Foo, String> barbarDescription();
希望它致电Foo#getBar().getBarBar().getDescription()。我怀疑 FooFoo 和 BarBar 可能是 null 可能会导致问题。
【问题讨论】:
-
在我看来你做得对,没有其他简单的方法。