Gwt 通过包装NullableListEditor实现NullableSetEditor
我有一个工作的NullableStringListEditor实现:Gwt 通过包装NullableListEditor实现NullableSetEditor,gwt,gwt-editors,Gwt,Gwt Editors,我有一个工作的NullableStringListEditor实现: public class NullableStringListEditor extends Composite implements IsEditor<OptionalFieldEditor< List<String>, ListEditor<String, StringEditor> >> {...} 第113行:chain.attach(值,子编辑器); 链似乎总是空的 我
public class NullableStringListEditor extends Composite implements IsEditor<OptionalFieldEditor< List<String>, ListEditor<String, StringEditor> >> {...}
第113行:chain.attach(值,子编辑器);
链似乎总是空的
我做错什么了吗?谢谢 如果
NullableStringSetEditor
是LeafvalueEditor
,则编辑器框架生成器将忽略wrappedEditor
,因此不会初始化和填充
您可能希望遵循
选项编辑器
模式,让您的编辑器成为复合编辑器
(除了成为叶值编辑器
)谢谢。我现在非常接近,现在唯一的问题是flush()之后值不会更新。我在下面将这些代码作为一个新的回应。谢谢你的帮助!嗨,托马斯,不幸的是,我仍然不知道如何使更新适用于NullableStringSetEditor。尽管wrappedEditor中包含的值已更改,但在flush()之后未更新任何值。你有什么线索吗?谢谢!
public class NullableStringSetEditor extends Composite implements ValueAwareEditor<Set<String>>, LeafValueEditor<Set<String>> {
private NullableStringListEditor wrappedEditor = new NullableStringListEditor();
@Override
public void setValue(Set<String> values) {
List<String> list = wrappedEditor.asEditor().getValue();
some null checking...
list.clear();
list.addAll(values);
wrappedEditor.asEditor().setValue(list); // will call setValue of OptionalFieldEditor from here
}
}
java.lang.NullPointerException: null at com.google.gwt.editor.client.adapters.OptionalFieldEditor.setValue(OptionalFieldEditor.java:113)