問題タブ [hk2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1410 参照

unit-testing - ファクトリをアノテーション修飾インジェクション ポイントにバインドするにはどうすればよいですか?

名前付き注入ポイントをバインドする方法を尋ねたところ、回答がありました。

そして、工場を適格な注入ポイントにバインドする方法がわかりません。

工場を用意しました

そして、そのためのバインダーを作成することに固執しました

実際にServiceBindingBuilder#qualifiedByの使い方を知りたいです。

0 投票する
1 に答える
1947 参照

java - Jersey と HK2 - 現在のユーザーの注入

私は jersey 2.17 と HK2 を使用して、単純な休憩アプリを作成しています。「currentuser」Cookie を持たContainerRequestFilterないリクエストを拒否する があります。

私はこのようなものを持っています:

それよりもエレガントなものをコーディングしたいのです。このような:

私はhk2に本当に慣れていないので、それを行う方法を見つけるのが本当に難しくなっています。

実装する適切なインターフェイス (または拡張するクラス) を求めているだけです。

0 投票する
1 に答える
1603 参照

java - jersey 2.x 依存性注入

こんにちは、以下のコードを jersey 1.x から jersey 2.x に移動する際に問題に直面しています。

また、HK2 が Jersey 2.0 で使用できることも理解していますが、Jersey 2.0 の統合に役立つドキュメントが見つからないようです。

0 投票する
1 に答える
5215 参照

rest - org.glassfish.hk2.api.UnsatisfiedDependencyException: SystemInjecteeImpl で注入できるオブジェクトがありませんでした

Jersey 2.0/HK2を使ってサンプルのRESTfulアプリを作ってみました。注入されるクラス@Service. しかし、これはしませんでした。

のインスタンスを登録するインスタンスを使用して、2 番目のコミット ( https://github.com/venkatramachandran/restful-sample-tomcat/commit/2ca30f )を作成しました。バインダーは基本的に、基本的に同じクラスであるmyをバインドします。org.glassfish.jersey.server.ResourceConfigorg.glassfish.hk2.utilities.binding.AbstractBinder@Contract@Service

私の質問は、HK2 が機能するためにバインダーは絶対に必要ですか? または、最初のコミットで構成を見逃したために、エラーが発生しましたorg.glassfish.hk2.api.UnsatisfiedDependencyExceptionか?

0 投票する
2 に答える
10532 参照

java - jersey2 / hk2 アプリケーションで Jackson Object Mapper への参照を取得するにはどうすればよいですか

Jackson を介して JSON サポート用に構成された jersey2 アプリケーションがあり、追加しています

POMファイルで

私のアプリケーションで。すべてが機能し、リソースはデシリアライズされた POJO を引数として取得します

これらのリソースの 1 つで、Jackson のリソースへの参照が必要になり、ObjectMapperそれ自体で逆シリアル化を行う必要があります。私は何かをやってみました

また

ただし、どちらの場合もへの参照mapperは null です。ObjectMapperリソースに への参照を挿入するにはどうすればよいですか?

0 投票する
1 に答える
11320 参照

java - 属性を持つJersey 2.xカスタムインジェクションアノテーション

DropWizard 0.7.1 から 0.8.1 に移行中です。これには、Jersey 1.x から 2.x への移行が含まれます。Jersey 1.18.1 を使用する私の実装では、実装するMyProvider(簡単にするためにすべてのクラス名を変更しました) がありましたInjectableProvider。このクラスはMyInjectable、カスタム注入アノテーションを含むオブジェクトを作成しますMyTokenMyTokenによって渡され、読み取られるさまざまな属性が含まれていますMyInjectable。最後に、以下に示すように、Applicationクラスに の新しいインスタンスを登録しMyProviderます。

私はいくつかの調査を行いましたが、Jersey 2.x でそのようなシナリオをどのように再現するか (または置き換えるか) について頭を悩ませているようには見えません。

現在の 1.18.1 実装は次のとおりです。

0 投票する
0 に答える
411 参照

java - Jersey ResourceMethodInvocationHandlerProvider で例外をスローする

このスレッドRegistering a custom ResourceMethodInvocationHandler in Jerseyに基づいて、JSON をアンマーシャリングした後、Jersey リソース メソッド呼び出しをインターセプトすることができました。

しかし、メソッドを呼び出す前に、MyInvocationHandler で何らかのロジック (例: 禁止された例外) に基づいてカスタム例外をスローするにはどうすればよいですか。これを行うと、500 エラーが発生しますjavax.servlet.ServletException

403 禁止の代わりに 500 エラー コードでエラーを下回る