Jersey を使用して REST マイクロ サービスを設計しているときに、catch 22 の問題が発生しました。デプロイの複雑さを軽減するために、グリズリー サーバーが組み込まれたアプリケーションを作成しようとしています。したがって、グリズリー サーバーを作成するメイン メソッドがあります。サーバーのブートストラップ手順の前にオブジェクトを注入する必要があります。
私のメインは次のようになります。
public static void main(String[] args) {
App app = new App(new MyResourceConfig());
// Need to inject app here.
app.init(args);
app.start();
}
ServiceLocator
アプリ オブジェクトを挿入できるように、シングルトン インスタンスを取得するにはどうすればよいですか?
私は試した:
ServiceLocatorFactory.getInstance()
.create("whatever")
.inject(app);
ただし、すべてを 2 回バインドする必要がありますAbstractBinder
(既に で実行しているためResourceConfig
)。