24

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

我想停止为 GWT 滚动我自己的绑定,但在数据绑定领域没有明显的赢家。

我更喜欢使用未来的东西,例如 GWT Incubator,但那里还没有。

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

它是一个非常基本的缺失功能。您知道 GWT 团队是否计划为此添加支持?在那种情况下,也许我会等。

谢谢

4

10 回答 10

8

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

http://www.gwtproject.org/doc/latest/DevGuideUiEditors.html

将来某个时候也会支持 jsr 303 验证。

于 2011-02-28T12:02:15.520 回答
4

您可以查看http://code.google.com/p/gwt-pectin/

于 2009-11-04T12:10:34.310 回答
2

SmartGWT ( http://www.jroller.com/sjivan/entry/smartgwt_1_0_released ) 是产品 smartclient 的 GWT API。他们有一个很好的数据绑定解决方案,因为它在构建时考虑到了服务器端集成。但缺点是它不是一个纯原生的 GWT 框架。它是另一个产品(智能客户端框架)的 JSNI 包装器。

于 2009-02-10T05:56:18.633 回答
1

如果它的 UI 数据绑定到模型(即文本框绑定到某个模型对象的属性),那么 GWT 有一个称为 UIBinder 的库功能。它显然还没有完全准备好用于生产(因此未发布),但 google wave 团队正在使用它(并且看起来它工作得很好)。查看此页面以获取一些信息http://code.google.com/p/google-web-toolkit-incubator/wiki/UiBinder

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

还有另一种方法,即使用 Javascript Object Overlays 将 json 转换为在 GWT 中使用的等效类模型(适用于像 grails 这样可以轻松生成 json 的框架,但它们的域模型与 RPC 不兼容)。查看这些博客文章,了解有关http://raibledesigns.com/rd/entry/json_parsing_with_javascript_overlay的一些提示(以及http://googlewebtoolkit.blogspot.com/2008/08/getting-to-really-know-gwt-part -2.html )

于 2009-07-03T10:30:49.080 回答
1

我建议你试试 HexaBinding,它是非侵入性的,只专注于 dara 绑定。这是链接:https ://github.com/learno/hexa.tools/blob/master/hexa.binding/README.md

于 2015-05-17T07:58:41.270 回答
0

查看gwt 的 eclipse 数据绑定 3.5

于 2009-07-17T06:16:26.893 回答
0

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

让我引用该网站:

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

也许这对你来说是一个解决方案。我会试一试。

于 2009-01-03T11:10:35.783 回答
0

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

于 2009-06-14T23:35:00.660 回答
0

在http://www.gdevelop.com/w/gwtxp/查看 gwtXP 。

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

  • 声明 UI 元素:<g:label text="User Name:"/>
  • 声明数据绑定(使用 Eclipse 数据绑定):<g:textBox text="${user.userName}"/>
  • 支持值绑定和列表绑定。
  • 声明动作处理程序:<g:button text="Save" onClick="#{saveUser}"/>

20010 年 3 月 6 日更新:参见http://www.gdevelop.com/w/blog/2010/03/06/data-binding-in-gwt/上的帖子

于 2010-03-01T01:09:30.523 回答
0

使用 google-web-toolkit-incubator http://code.google.com/p/google-web-toolkit-incubator/wiki/Downloads?tm=2进行数据绑定。uface 没有编译版本,他们的源代码不会按照他们的指示编译。(此条目上方的条目是指 uface)。

于 2009-08-11T19:55:30.393 回答