我现在正在将应用程序从GXT 2迁移到GXT 3。
两者之间的主要区别之一是GXT 3.x允许POJO在小部件中使用,而GXT 2.x小部件需要实现ModelData的对象。
问题是我不能简单地丢弃所有ModelData对象并使用POJO,因为ModelData对象包含许多仅与GUI相关的附加属性。
因此,这些属性无法放置到POJO(真实应用程序模型)中。
最有可能的是,我最终将构建自己的ModelData接口和一组在小部件中使用的对象。看起来有点丑陋,而且不是GXT3风格的。
是否有其他方法可用来解决此问题?也许有人已经面对了?任何建议都受到高度赞赏。
最佳答案
与Chris Phillipson的建议类似,您可以使用客户端变体对POJO进行子类化,该变体会添加其他字段,例如您有一个名为MyPojo的类:
class MyPojo {
private String name;
private String address;
...
}
在客户端上,您有子类:
class MyClientPojo extends MyPojo {
private String additionalInfo;
...
}