web-dev-qa-db-ja.com

GWTに最適なデータバインディングソリューション

GWT用の多くの半ば焼きデータバインディングソリューションの1つを使用したことがありますか?もしそうなら、それはどれくらいうまくいきましたか?

GWTの独自のバインディングのローリングを停止したいのですが、データバインディングスペースに明確な勝者がありません。

将来的に何かを使用したいです。 GWTインキュベーターですが、まだ何もありません。

私はGWTDesignerを使用していて気に入っていますが、これに対する解決策もないようです。

そのかなり基本的な欠けている機能。 GWTチームがこれに対するサポートを追加する予定があるかどうか知っていますか?その場合、多分私は待ちます。

ありがとう

24

最近これについて疑問がある場合は、GWTエディターを使用する必要があります。

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

将来のある時点で、jsr303検証もサポートされる予定です。

8
Jon Vaughan

あなたはチェックアウトすることができます http://code.google.com/p/gwt-pectin/

4
Andrew

SmartGWT( http://www.jroller.com/sjivan/entry/smartgwt_1_0_released )は、製品smartclientのGWTAPIです。サーバー側の統合を念頭に置いて構築されているため、優れたデータバインディングソリューションがあります。しかし、欠点は、それが純粋なネイティブGWTフレームワークではないことです。これは、別の製品(Smart Client Framework)のJSNIラッパーです。

2
Edwin

非侵襲的で、ダラバインディングのみに焦点を当てたHexaBindingを試してみることをお勧めします。リンクは次のとおりです: https://github.com/ltearno/hexa.tools/blob/master/hexa.binding/README.md

1
Arnaud Tournier

uIのモデルへのデータバインディング(つまり、モデルオブジェクトのプロパティにバインドされたテキストボックス)の場合、GWTにはUIBinderと呼ばれるライブラリ機能があります。まだ本番環境で使用する準備が整っていないようです(したがってリリースされていません)が、Google Waveチームはそれを使用しています(そしてかなりうまく機能しているようです)。いくつかの情報については、このページをチェックしてください http://code.google.com/p/google-web-toolkit-incubator/wiki/UiBinder

サーバーからモデルオブジェクト(休止状態オブジェクトなど)を返すGWT RPCについて話している場合、他の場所で述べたように Gilead はおそらく一見の価値があります-私は個人的な経験はありませんが。

別の方法があります。それは、Javascript Object Overlaysを使用してjsonをGWTで使用する同等のクラスモデルに変換することです(jsonを簡単に解き放つことができるgrailsのようなフレームワークに適していますが、ドメインモデルはRPC互換ではありません)。そのためのヒントについては、これらのブログ投稿を確認してください http://raibledesigns.com/rd/entry/json_parsing_with_javascript_overlay (および http://googlewebtoolkit.blogspot.com/2008/08/ get-to-really-know-gwt-part-2.html

1
Chii

数分前にメーリングリストで、いわゆる GWTEventService 1. がリリースされたことを読みました。それがあなたが望むものであるかどうかは完全にはわかりませんが、それは私にとって有望に聞こえます。

サイトを引用させてください:

GWTEventServiceは、イベントベースのクライアントサーバー通信フレームワークです。 GWT-RPCとComet/server-Pushテクニックを使用します。 クライアント側は、GUIコンポーネントのようにリスナーをサーバーに登録する機会を持つ高レベルAPIを提供します。イベントはサーバー側のコンテキスト/ドメインに追加でき、クライアント側のリスナーは着信イベントについて通知を受けます。サーバー側はクライアントの実装から完全に独立しており、高度に構成可能です。ドメインを定義して、さまざまなコンテキストにとって重要なイベントを決定できます。

多分これはあなたのための解決策です。やってみます。

0
maerch

Eclipse databinding 3.5 for gwt をチェックしてください。

0
Christoph

データバインディングにはgoogle-web-toolkit-incubator http://code.google.com/p/google-web-toolkit-incubator/wiki/Downloads?tm=2 を使用します。 ufaceにはコンパイル済みバージョンがなく、ソースコードは指示に従ってコンパイルされません。 (これのすぐ上のエントリはufaceを参照しています)。

0
Samedude

http://www.gdevelop.com/w/gwtxp/ でgwtXPをチェックしてください。

gwtXPを使用すると、UI要素、データバインディング、およびアクションハンドラーをXMLで宣言できます。例:

  • UI要素を宣言します:<g:label text = "User Name:" />
  • データバインディングを宣言します(Eclipseデータバインディングを使用します):<g:textBox text = "$ {user.userName}" />
  • 値バインディングとリストバインディングの両方をサポートします。
  • アクションハンドラーを宣言します:<g:button text = "Save" onClick = "#{saveUser}" />

2 0010年3月6日に更新: http://www.gdevelop.com/w/blog/2010/03/06/data-binding-in-gwt/ の投稿を参照してください。

0
Trung

Gilead 、以前のHibernate4GWTは、「PersistentRemoteServiceクラスを定義し、RemoteServiceServletから継承して、シームレスに永続的なエンティティ管理を処理します。」数年前から活発に開発されています。

0
Glenn