Spring Bootでサーブレットとフィルターの両方としてJerseyを使用できますか?

マホーニャ

Springのドキュメントによると

spring.jersey.type = filterを設定することにより、サーブレットの代わりにフィルターを使用することもできます(この場合、置換またはオーバーライドする@BeanはjerseyFilterRegistrationです)。

この質問への回答によると

特定の条件に基づいてリクエストをフィルタリングおよび/または変更する場合は、フィルタを使用します。リクエストを制御、前処理、後処理する場合は、サーブレットを使用します。

では、JerseyをSpring Bootで使用して、jsonコンテンツを提供し、承認の確認やすべての応答へのヘッダーの追加などのフィルターを適用する場合はどうでしょうか。春のドキュメントには、Jerseyのフィルタまたはサーブレットの役割を選択する必要があるように書かれています。

Spring BootアプリケーションでJerseyの両方を実行できますか?その場合、どのように実行できますか?

ポール・サムソサ

では、JerseyをSpring Bootで使用して、jsonコンテンツを提供し、承認の確認やすべての応答へのヘッダーの追加などのフィルターを適用する場合はどうでしょうか。

この質問はあまり意味がありません。

ジャージー自体は処理エンジンです。それはサーブレットコンテナから必要なすべてがあるHttpServeltRequestHttpServletResponse、要求の処理を開始します。これらは、サーブレットFilterまたはサーブレットの両方として取得できますHttpServletまた、メインのJerseyサーブレットコンテナコンポーネントServletContainerを見ると、拡張HttpServlet 実装の両方が行われていることがわかりますFilter

したがって、Jerseyをフィルターまたはサーブレットとして構成できることは、SpringBootに固有のものではありません。ジャージーはこのように設計されています。Spring Bootを使用せずに、Jerseyをフィルターまたはサーブレットとして構成できます

フィルタシステムに関しては、Jerseyには、サーブレットAPIとは独立した独自のフィルタシステムがあります。ただし、サーブレットフィルタを使用する場合は、Jerseyをフィルタとして構成するかサーブレットとして構成するかに関係なく、使用できない理由はありません。サーブレットのフィルタチェーンを理解していれば、フィルタが次々に呼び出され、次にサーブレットが呼び出されることがわかります。したがって、フィルターを追加して、Jerseyフィルターの前に実行させたい場合は、それを行うことができます。または、Jerseyがサーブレットの場合、フィルタはJerseyサーブレットの前に呼び出されます。いずれにせよ、それは同じ結果です。サーブレットがフィルタである、またはサーブレットであるという理由だけで、Jerseyは処理動作を変更しません。

春のドキュメントには、Jerseyのフィルタまたはサーブレットの役割を選択する必要があるように書かれています

はいサーブレットまたはフィルタ。私が上で述べたことから明らかなはずです。複数のサーブレットフィルタを使用できます。フィルタは次々に発生します。ジャージーとは関係のないフィルターを追加できます。それらはすべて同じServletRequestとを渡されるServletResponseので、それらはすべて同じ要求と応答で相互作用します。ヘッダーを追加するフィルターを作成する場合は、それを実行します。ジャージーについて何も知る必要はありません。

auth / headersなどのJersey固有のフィルター(サーブレットフィルターメカニズムに依存しない)を作成する場合は、フィルターとインターセプターを確認できます(このすばらしい回答で認証の例を確認できます)。

サーブレットフィルタを追加する場合は、SpringBootFilterRegistrationBeanのsを使用して追加できます

@Bean
public FilterRegistrationBean anotherFilter() {

}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Spring Bootはプロパティとymlファイルの両方を同時に使用することをサポートしていますか?

分類Dev

マルチパート/フォームとチャンクエンコーディングの両方を使用して、Spring MVCでファイルアップロードを受信するにはどうすればよいですか?

分類Dev

ThymeleafとSpring Boot、実行時とデザインタイムの両方でHTMLを表示するためのアセットフォルダーの作成方法

分類Dev

Spring Boot:同じプロジェクトでステートレスREST APIとステートフル「ログイン」Webコントローラーの両方を認証しますか?

分類Dev

Spring-boot:サーブレットフィルターを1つを除くすべてのルートに適用します

分類Dev

SpringアプリからディレクトリサービスとしてAWSユーザープールを使用できますか?

分類Dev

Spring Securityを使用して、新しいユーザーの作成中に役割と権限の両方を同時に使用することはできません

分類Dev

Spring Bootで@Beanとして作成されたサーブレットの自動サーブレットマッピングを回避する

分類Dev

Springを使用しているときに、チェックスタイルメッセージ「ユーティリティクラスにデフォルトのパブリックコンストラクターを含めることはできません」を抑制する方法

分類Dev

Java Springブートマイクロサービスをインストールファイルとしてエクスポートできますか?

分類Dev

Spring-WebSocketとSpring-Bootメッセージブローカーを使用して、100万人のユーザーを対象とする独自のチャットアプリケーションを作成できますか?

分類Dev

Spring Bootでは、拡張セッターとゲッターを使用して(拡張)プロパティをどのように設定しますか?

分類Dev

Spring Bootを使用してデータベースなしでSpring Data JDBCでCrudRepositoryをモックすることはできますか?

分類Dev

Spring MVCでオブジェクトとハッシュマップの両方をモデル属性に渡して、同時に使用できるようにするにはどうすればよいですか?

分類Dev

Spring Boot:既存のSpring MVCアプリケーションでリアクティブWebフィルターを使用できますか?

分類Dev

MangoDBのSpring Bootで集計と基準を使用してフィールドの数を含むデータのリストを取得する方法

分類Dev

Spring Batchリモートパーティショニングでは、マスターとスレーブの構成を単一の構成として持ち、それを単一のプログラムとして実行できますか?

分類Dev

Spring Boot、セキュリティ、OAuth2:カスタムAuthorizationCodeResourceDetailsを使用することは可能ですか?認証サーバーはリダイレクトURLに特定のパラメーターを必要とします

分類Dev

Spring Boot:複数のオブジェクトを複数の@RequestParamsとしてRESTサービスに投稿できますか?

分類Dev

@DataJpaTestを使用しているときにSpring Bootテストでフラッシュモードを変更しますか?

分類Dev

テーブルの複合キー(Spring JPA)としてプリミティブと複合主キーの両方を含むJoinTableを作成するにはどうすればよいですか?

分類Dev

Mapstruct:ソースがNullの場合にターゲット文字列をデフォルトで空の文字列にする方法(両方のフィールドの名前とタイプが同じ)Java / Spring

分類Dev

Spring DataHadoopとSpringMVCの両方を使用しているときのエラー

分類Dev

Spring BootアプリケーションのファイルとしてのHSQLDBデータストレージ、視覚化できません

分類Dev

単純なJSpとサーブレットコードをSpringフレームワークに移行できますか?

分類Dev

Springディスパッチサーブレットがindex.htmlを見つけることができません。DispatcherServletでURI []を使用したHTTPリクエストのマッピングが見つかりません

分類Dev

HttpMessageNotReadableException:JSONを読み取れませんでした:SpringブートとAndroidを使用して認識できないフィールド

分類Dev

Spring BootのSwagger2ドキュメントでは、タイムスタンプフィールドのドキュメントをJSONオブジェクトとして取得しています

分類Dev

Spring Bootで内部クラスを列フィールド変数として使用およびマップするにはどうすればよいですか?

Related 関連記事

  1. 1

    Spring Bootはプロパティとymlファイルの両方を同時に使用することをサポートしていますか?

  2. 2

    マルチパート/フォームとチャンクエンコーディングの両方を使用して、Spring MVCでファイルアップロードを受信するにはどうすればよいですか?

  3. 3

    ThymeleafとSpring Boot、実行時とデザインタイムの両方でHTMLを表示するためのアセットフォルダーの作成方法

  4. 4

    Spring Boot:同じプロジェクトでステートレスREST APIとステートフル「ログイン」Webコントローラーの両方を認証しますか?

  5. 5

    Spring-boot:サーブレットフィルターを1つを除くすべてのルートに適用します

  6. 6

    SpringアプリからディレクトリサービスとしてAWSユーザープールを使用できますか?

  7. 7

    Spring Securityを使用して、新しいユーザーの作成中に役割と権限の両方を同時に使用することはできません

  8. 8

    Spring Bootで@Beanとして作成されたサーブレットの自動サーブレットマッピングを回避する

  9. 9

    Springを使用しているときに、チェックスタイルメッセージ「ユーティリティクラスにデフォルトのパブリックコンストラクターを含めることはできません」を抑制する方法

  10. 10

    Java Springブートマイクロサービスをインストールファイルとしてエクスポートできますか?

  11. 11

    Spring-WebSocketとSpring-Bootメッセージブローカーを使用して、100万人のユーザーを対象とする独自のチャットアプリケーションを作成できますか?

  12. 12

    Spring Bootでは、拡張セッターとゲッターを使用して(拡張)プロパティをどのように設定しますか?

  13. 13

    Spring Bootを使用してデータベースなしでSpring Data JDBCでCrudRepositoryをモックすることはできますか?

  14. 14

    Spring MVCでオブジェクトとハッシュマップの両方をモデル属性に渡して、同時に使用できるようにするにはどうすればよいですか?

  15. 15

    Spring Boot:既存のSpring MVCアプリケーションでリアクティブWebフィルターを使用できますか?

  16. 16

    MangoDBのSpring Bootで集計と基準を使用してフィールドの数を含むデータのリストを取得する方法

  17. 17

    Spring Batchリモートパーティショニングでは、マスターとスレーブの構成を単一の構成として持ち、それを単一のプログラムとして実行できますか?

  18. 18

    Spring Boot、セキュリティ、OAuth2:カスタムAuthorizationCodeResourceDetailsを使用することは可能ですか?認証サーバーはリダイレクトURLに特定のパラメーターを必要とします

  19. 19

    Spring Boot:複数のオブジェクトを複数の@RequestParamsとしてRESTサービスに投稿できますか?

  20. 20

    @DataJpaTestを使用しているときにSpring Bootテストでフラッシュモードを変更しますか?

  21. 21

    テーブルの複合キー(Spring JPA)としてプリミティブと複合主キーの両方を含むJoinTableを作成するにはどうすればよいですか?

  22. 22

    Mapstruct:ソースがNullの場合にターゲット文字列をデフォルトで空の文字列にする方法(両方のフィールドの名前とタイプが同じ)Java / Spring

  23. 23

    Spring DataHadoopとSpringMVCの両方を使用しているときのエラー

  24. 24

    Spring BootアプリケーションのファイルとしてのHSQLDBデータストレージ、視覚化できません

  25. 25

    単純なJSpとサーブレットコードをSpringフレームワークに移行できますか?

  26. 26

    Springディスパッチサーブレットがindex.htmlを見つけることができません。DispatcherServletでURI []を使用したHTTPリクエストのマッピングが見つかりません

  27. 27

    HttpMessageNotReadableException:JSONを読み取れませんでした:SpringブートとAndroidを使用して認識できないフィールド

  28. 28

    Spring BootのSwagger2ドキュメントでは、タイムスタンプフィールドのドキュメントをJSONオブジェクトとして取得しています

  29. 29

    Spring Bootで内部クラスを列フィールド変数として使用およびマップするにはどうすればよいですか?

ホットタグ

アーカイブ