検索

15.8.2. インターセプターを JAX-RS メソッドにバインドする

download PDF

概要

登録されているすべてのインターセプターは、デフォルトですべての要求に対して呼び出されます。The AcceptedByMethodこの動作を微調整するためにインターフェイスを実装できます。

例15.7 バインディングインターセプターの例

RESTEasy は accept()を実装するインターセプターのメソッド AcceptedByMethodインターフェイス。メソッドが true を返す場合、インターセプターは JAX-RS メソッドのコールチェーンに追加されます。それ以外の場合は、そのメソッドでは無視されます。
以下の例では、 accept()@GET アノテーションが JAX-RS メソッドに存在するかどうかを判別します。そうである場合、インターセプターはメソッドの呼び出しチェーンに適用されます。
@Provider
@ServerInterceptor
public class MyHeaderDecorator implements MessageBodyWriterInterceptor, AcceptedByMethod {

    public boolean accept(Class declaring, Method method) {
       return method.isAnnotationPresent(GET.class);
    }

   public void write(MessageBodyWriterContext context) throws IOException, WebApplicationException
   {
      context.getHeaders().add("My-Header", "custom");
      context.proceed();
   }
}
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.