私は、ウェブとジャージー(スプリング・ブート・ジャージー・スターター)を備えたスプリング・ブートを使用しています。リクエストスコープBeanを注入する必要があるJerseyエンドポイントがあります。しかし、アプリケーションの起動時にBeanが見つかりませんでした。スプリング・ブート・ジャージー - コントローラの起動インスタンス化を防止する
@Component
@Path("blah")
@RequestScoped
public class JerseyController{
@Inject
private MyEntity entity;
}
@Component
public class JerseyConfiguration extends ResourceConfig{
public JeyseyConfiguration(){
register(JeyseyController.class);
registere(MyEntityProvider.class);
}
}
方法は、インスタンス化し、注入された依存関係は、私のジャージープロバイダが提供できるように、HTTPリクエストを受信するまで、私のJerseyControllerを注入しようとするから春を防ぐために、春・ブートのWebアプリで、ありますか?
Jerseyのリソースで '@ Component'は必要ありません。これにより、Springはそれをインスタンス化します(デフォルトのSingletonスコープを使用)。私はSpringが '@ RequestScoped'を尊重しているとは思わない。これはジャージーの注釈です。あなたが '@ Component'を使いたいのであれば、私はSpringの' @Scope( "request") 'がトリックをするかもしれないと思います。 –
それだけです!ありがとう。 '@ Component'属性を削除できました –