重要编辑:我为情况添加了一个深度级别,以更好地反映我的问题。
我有一个带有特定类型 ListStore 的 GXT Grid Foo
。Foo
碰巧有一些重要的对象属性,包括 type 之一Bar
。TypeBar
由两个对象属性组成:fooFoo
of typeFooFoo
和barBar
of type Barbar
。这两个可以null
和有一个String
属性description
。
我想使用 GXT 网格的过滤来过滤Foo
对象记录的Bar
值FooFoo
或BarBar
描述。
我试图添加一个ValueProvider<Foo, String> barDescription();
to 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
可能会导致问题。