为了简洁起见:如何编辑Set <?用GWT编辑器框架扩展EntityProxy>?
public class Person
{
String name;
Set<Address> addresses;
}
public class Address
{
String city;
String street;
}
与和匹配
public interface PersonProxy extends EntityProxy
{
public String getName();
public Set<AdressProxy> getAddresses();
}
和
public interface AdressProxy extends EntityProxy
{
public String getCity();
public String getStreet();
}
我UiBuinder类编辑AddressProxy ,它清楚地知道如何使用ListEditor在如果我有List但数据设置在Person类中 如何使用Editor Framework编辑它们? 或者当它变成PersonProxy时,我该如何将设置转换为列表?在
我做了一个企图把一种适配器编辑器类将实现
LeafValueEditor<Set<AddressProxy>>
,然后LeafValueEditor.setValue()移动到列表内,开始新的driver.edit()一个独立的编辑器层次结构,负责列表编辑,但现在运气好。
谢谢!这是从一开始。坦率地懒惰我希望链接到一些代码:-)。 –
我认为一些标准的'SetEditor'(可能委托给'ListEditor')应该由GWT提供。我和OP有同样的问题,最后暴露了List类的访问器(转换真正的Set类型的属性),只是为了能够使用ListEditor。但是并不总是可以做到的(有时候我们只需要在客户端使用Set-wise行为) –
问题是a)按定义设置没有特定顺序,值的子编辑器必须是_list_, b)你可能想要在编辑过程中允许重复的值,并且只在_flush_时间检查唯一性,但是你必须以某种方式告诉用户何时是这种情况(“嘿,我有4个值,当我保存时只保留3个值他们!“);唯一性取决于你如何在编辑的对象中实现equals()。如果你可以想出一个_standard_'SetEditor',那么请提供它! –