Java GWT的最佳数据绑定解决方案

Java GWT的最佳数据绑定解决方案,java,data-binding,gwt,Java,Data Binding,Gwt,您是否曾经为GWT使用过许多不成熟的数据绑定解决方案之一?如果是的话,效果如何 我想停止使用我自己的GWT绑定,但在数据绑定领域没有明确的赢家 我更喜欢使用未来的东西,例如GWT孵化器,但现在还没有 我使用GWTDesigner并喜欢它,但它似乎也没有解决方案 这是一个基本的缺失特征。您知道GWT团队是否计划为此添加支持吗?那样的话,也许我会等 谢谢我几分钟前刚刚在一个邮件列表中读到,一个所谓的邮件已经发布了。我不完全确定,如果这是你想要的,但这听起来对我很有希望 让我举一个例子: GWTEve

您是否曾经为GWT使用过许多不成熟的数据绑定解决方案之一?如果是的话,效果如何

我想停止使用我自己的GWT绑定,但在数据绑定领域没有明确的赢家

我更喜欢使用未来的东西,例如GWT孵化器,但现在还没有

我使用GWTDesigner并喜欢它,但它似乎也没有解决方案

这是一个基本的缺失特征。您知道GWT团队是否计划为此添加支持吗?那样的话,也许我会等


谢谢

我几分钟前刚刚在一个邮件列表中读到,一个所谓的邮件已经发布了。我不完全确定,如果这是你想要的,但这听起来对我很有希望

让我举一个例子:

GWTEventService是一个基于事件的客户机-服务器通信框架。它使用GWT-RPC和Comet/server推送技术客户端提供了一个高级API,有机会向服务器注册监听器,就像向GUI组件注册监听器一样。事件可以添加到服务器端的上下文/域中,并且客户端的侦听器可以获得有关传入事件的通知。服务器端完全独立于客户端实现,并且高度可配置。可以定义域来决定哪些事件对于不同的上下文是重要的

也许这是你的解决方案。我将尝试一下。

SmartGWT()是产品smartclient的GWT API。
他们有一个很好的数据绑定解决方案,因为它是在考虑服务器端集成的情况下构建的。但缺点是它不是一个纯粹的本地GWT框架。它是围绕另一个产品(智能客户端框架)的JSNI包装

,前身为Hibernate4GWT,“定义了一个PersistentRemoteService类,继承自RemoteServiceServlet以无缝处理持久实体管理。”它已经在积极开发了几年了。

如果它的UI数据绑定到模型(即绑定到某个模型对象属性的文本框),然后GWT有一个称为UIBinder的库特性。显然,它还没有完全准备好投入生产使用(因此尚未发布),但google wave团队正在使用它(看起来它工作得很好)。签出此页面以获取一些信息

如果您谈论的是GWT RPC从服务器返回模型对象(例如hibernate对象),那么其他地方提到的可能值得一看——尽管我从未有过任何个人经验


还有另一种方法,那就是使用Javascript对象覆盖将json转换为等价的类模型,以便在GWT中使用(对于grails这样的框架很好,可以轻松地生成json,但它们的域模型与RPC不兼容)。查看这些博客文章,了解一些关于这方面的提示。

查看使用google web toolkit孵化器进行数据绑定。 uface没有编译版本,并且它们的源代码也不会按照它们的指示编译。(此项右上方的条目指的是uface)。

您可以在上查看gwtXP

gwtXP允许您用XML声明UI元素、数据绑定和操作处理程序。示例:

  • 声明UI元素:
  • 声明数据绑定(使用Eclipse数据绑定):
  • 支持值绑定和列表绑定
  • 声明操作处理程序:

更新日期:2010年3月6日:见

的帖子如果现在对此有任何疑问,您应该使用GWT编辑器:


在将来的某个时候,也会支持JSR303验证。

我建议您尝试HexaBinding,它是非侵入性的,只关注dara绑定。以下是链接:

更多信息:数据绑定目前需要pro许可证,每位开发人员745美元。这允许您将JDO注释对象从服务器传递到客户端,但仍然无法从对象构建UI,也无法验证等。好吧,最初的问题不是构建UI或验证等。,这是关于数据绑定的。一个和我一起工作的伙伴为从标准小部件派生的小部件编写了一个容器类;这些派生的小部件引用属性名,容器类通过属性名处理数据库交互。不过,这似乎是对另一个问题的回答。据我所知,UiBinder是从声明(如XML)格式组合GWT UI,而不是数据绑定。如果您直接从服务器谈论绑定,那么,不,这与现有的绑定框架不同,Gilead可能是您想要的东西。UIBinder绑定到您可以在运行时插入的UI变量——这非常强大,可以作为您在上述注释中提到的绑定框架的基础。