GWTプロジェクトでGINを正常に使用しています。これで、RPCサービスは他のレイヤー(ビジネスロジック->データアクセス)からのデータを必要とします。以前は、必要なメソッドを使用してシングルトンサービスを実行していました。MyGwtServiceImpl.getData()-> MyServerSideService.getData()-> MyDaoGetDataFromDB()のようなもの
しかし、最近はシングルトンはあまり評価されていないので、テスト目的で注入法を使用したいと思います。
知っておく必要があるのはサーバー側にGUICEをインストールすることだけですが、インジェクターの作成をどこで行うべきかはよくわかりません。通常はmainメソッドで実行されますが、ここではGWTを使用しています。
GINとGUICElibの間に競合はありますか?
インジェクターの作成はどこに置くべきですか?onModuleLoadで?私のアプリケーションはいくつかに分割されるので、よくわかりません。
助けてくれてありがとう!
概要 :
- トーマスによって与えられたチュートリアルに従ってください(答え)
しかし、インジェクションが機能するためには、web.xmlで置き換える(実際には削除する)ことを忘れないでください:
<servlet> <servlet-name>MyService</servlet-name> <servlet-class>com.myapp.MyServiceImpl</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyService</servlet-name> <url-pattern>/com.myapp/MyService</url-pattern> </servlet-mapping>
Guiceモジュールで:
serve("/com.myapp/MyService").with(MyServiceImpl.class);