2011-02-08 8 views
2

サービスベースのドメイン層でGWTを使用する必要があります.Daoを持つBeanではなく、 MVPとRequestFactoryを備えたGWT 2.1アーキテクチャはこれに適していますか?または私はRPCにとどまるべきですか?サービス層を持つRequestFactory

おかげ

答えて

3

GWTの2.1.1あなたはRequestFactoryサーバー・コードは、エンティティおよびサービスオブジェクトのインスタンスへの参照を取得する方法を制御できるようにするLocatorServiceLocatorメカニズムを追加します。例えば

、あなたはRequestFactory、サーバー・ドメイン・オブジェクトまたはサービスコードと対話する方法をさらに細かく制御する必要がある場合、あなたはサービス層にServiceLayerDecoratorのインスタンスを注入することができます

class MyService.class { 
    // Note that this is not a static method 
    public void doSomething() {....}; 
} 

class MyServiceLocator implements ServiceLocator { 
    public Object getInstance(Class<?> clazz) { 
    // Or use Guice, Spring, whatever provides instances of MyService 
    return new MyService(); 
    } 
}  

interface MyRequestFactory extends RequestFactory { 
    @Service(value=MyService.class, locator=MyServiceLocator.class) 
    interface ServiceRequest extends RequestContext { 
    Request<Void> doSomething(); 
    } 
    ServiceRequest myService(); 
} 

ようなコードを宣言することができます。

+0

これらの機能を実証するサンプルアプリケーションや足場アプリケーションはありますか? Thanks –

+1

Thomas Broyerは、RequestFactoryの機能とドキュメントに貢献してくれた非常にアクティブなユーザーです。 RFに関する一連のブログ記事に取り組んでいます。 http://tbroyer.posterous.com/gwt-211-requestfactory-part-ii彼はGWT Googleグループにもかなり投稿しています。 – BobV

+0

どのパッケージでMyServiceLocatorクラスを記述しますか?共有またはサーバーで?私は共有パッケージでそれをやろうとしましたが、エラーが発生します。com.google.gwt.sample.server.TreeServiceタイプのソースコードはありません。必要なモジュールを継承することを忘れましたか?これは、共有パッケージがサーバーパッケージからクラスを参照してはならないためです。 –

関連する問題