2

マルチモジュールのGWTプロジェクトがあり、ServiceLocatorsを使用したいと思います。私は3つのモジュールを持っています:

  • 「クライアント」は共有に依存
  • 「共有」
  • 「サーバー」は共有に依存

私はServiceLocatorを次のように書きました:

public class TreeServiceLocator implements ServiceLocator {
    public Object getInstance(Class<?> clazz) {
        return new TreeService();
    }
}

ServiceLocatorにはパッケージcom.google.gwt.requestfactory.sharedがあるため、このクラスを「共有」モジュールに配置しました。ただし、TreeServiceはサーバーからBeanを返し、Springなどと対話する必要があるため、TreeServiceは「server」モジュールに実装されているため、コンパイルするとエラーがスローされます。

TreeServiceLocatorを実装するモジュールはどれですか?また、「共有」モジュールから「サーバー」をインクルードしようとすると、Mavenは循環依存エラーをスローします。

ありがとうございました!

4

1 に答える 1

3

パッケージにを配置しTreeServiceLocator、の代わりに注釈を使用します。これらのアノテーションは同じ効果がありますが、前者はクラスリテラルの代わりに文字列リテラルを使用します。これにより、サーバータイプがGWTコンパイラのクラスパスで使用できない場合のGWTコンパイルの問題を回避できます。server@ServiceName@Service

于 2011-02-21T01:48:39.600 に答える