私はこのようなことができるようにしたい:
@GET
@Path("test")
public Response someMethod(@Context MyCustomContext myCustomContext) {
...
}
ここでこれを行うためのさまざまな方法を説明しているこの古いスタック オーバーフローの投稿を見つけました: Using @Context, @Provider and ContextResolver in JAX-RS。私はトップの答え(実装にとらわれない)を実装し、それを機能させましたが、それは私が望んでいたこととまったく同じではありませんでした。代わりに、次のようになりました。
@GET
@Path("test")
public Response someMethod(@Context Providers providers) {
ContextResolver<MyCustomContext> p = providers.getContextResolver(MyCustomContext.class, MediaType.WILDCARD_TYPE);
MyCustomContext myCustomContext = p.getContext(null);
...
}
その投稿には他にもいくつかの解決策がありましたが、それらは実装に依存していました。quarkus のドキュメントで、 https ://quarkus.io/guides/cdi-reference#synthetic-beans にあるカスタム コンテキストに関するセクションがあることに気付きましたが、これは拡張機能に固有のものです。quarkus プロジェクトでこれを行う方法についてアイデアを持っている人はいますか?