第24章 例外処理


24.1. 例外マッパ

ExceptionMapper は、 アプリケーション例外をキャッチし、 特定の HTTP 応答を書くことができるカスタムのアプリケーション提供によるコンポーネントです。 @Provider と関連し、 次のインターフェースを実装します。
         package javax.ws.rs.ext;

         import javax.ws.rs.core.Response;

         /**
         * Contract for a provider that maps Java exceptions to
         * {@link javax.ws.rs.core.Response}. An implementation of this interface must
         * be annotated with {@link Provider}.
         *
         * @see Provider
         * @see javax.ws.rs.core.Response
         */
         public interface ExceptionMapper<E>
         {

         /**
         * Map an exception to a {@link javax.ws.rs.core.Response}.
         *
         * @param exception the exception to map to a response
         * @return a response mapped from the supplied exception
         */
         Response toResponse(E exception);
         }
Copy to Clipboard Toggle word wrap
アプリケーションが例外を送出すると、 例外は JAX-RS ランタイムによってキャッチされます。 JAX-RS は登録された ExceptionMapper をスキャンし、送出された例外タイプのマーシャリングをサポートするものを検索します。 以下は ExceptionMapper の例になります。
         @Provider
         public class EJBExceptionMapper implements ExceptionMapper<javax.ejb.EJBException>
         {

         Response toResponse(EJBException exception) {
         return Response.status(500).build();
         }

         }
Copy to Clipboard Toggle word wrap
ExceptionMapperMessageBodyReaderMessageBodyWriter と同様に登録されます。 RESTEasy プロバイダ context-param よりスキャンするか ( WAR ファイルにデプロイする場合) ResteasyProviderFactory クラスよりプログラムにて実行します。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat