public class ResponseStatusExceptionResolver extends AbstractHandlerExceptionResolver implements MessageSourceAware
@ResponseStatus アノテーションを使用して例外を HTTP 状況コードにマップする HandlerExceptionResolver。 この例外リゾルバーは、DispatcherServlet および MVC Java 構成と MVC 名前空間でデフォルトで有効になっています。
4.2 の時点で、このリゾルバーは原因の例外に存在する @ResponseStatus を再帰的に検索し、4.2.2 の時点でこのリゾルバーはカスタム合成アノテーションで @ResponseStatus の属性オーバーライドをサポートします。
ResponseStatusloggerHIGHEST_PRECEDENCE, LOWEST_PRECEDENCE| コンストラクターと説明 |
|---|
ResponseStatusExceptionResolver() |
| 修飾子と型 | メソッドと説明 |
|---|---|
protected ModelAndView | doResolveException(HttpServletRequestEE request, HttpServletResponseEE response, ObjectSE handler, ExceptionSE ex) ハンドラーの実行中にスローされた特定の例外を実際に解決し、適切であれば特定のエラーページを表す ModelAndView を返します。 |
protected ModelAndView | resolveResponseStatus(ResponseStatus responseStatus, HttpServletRequestEE request, HttpServletResponseEE response, ObjectSE handler, ExceptionSE ex)@ResponseStatus アノテーションを処理するテンプレートメソッド。 |
void | setMessageSource(MessageSource messageSource) このオブジェクトが実行される MessageSource を設定します。 |
buildLogMessage, getOrder, logException, prepareResponse, preventCaching, resolveException, setMappedHandlerClasses, setMappedHandlers, setOrder, setPreventResponseCaching, setWarnLogCategory, shouldApplyTocloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic void setMessageSource(MessageSource messageSource)
MessageSourceAware通常の Bean プロパティの設定後、InitializingBean の afterPropertiesSet などの init コールバックやカスタム init メソッドの前に呼び出されます。ApplicationContextAware の setApplicationContext の前に呼び出されます。
MessageSourceAware の setMessageSource messageSource - このオブジェクトが使用するメッセージソース protected ModelAndView doResolveException(HttpServletRequestEE request, HttpServletResponseEE response, ObjectSE handler, ExceptionSE ex)
AbstractHandlerExceptionResolverModelAndView を返します。特定の例外チェックを適用するために、サブクラスでオーバーライドできます。このテンプレートメソッドは、この解決が適用されるかどうか ( "mappedHandlers" など) を確認した後に呼び出されるため、実装では実際の例外処理をそのまま続行できます。
AbstractHandlerExceptionResolver の doResolveException request - 現在の HTTP リクエスト response - 現在の HTTP レスポンス handler - 実行されたハンドラー、または例外時に何も選択されなかった場合は null (たとえば、マルチパート解決が失敗した場合)ex - ハンドラーの実行中にスローされた例外 ModelAndView、または解決チェーンでのデフォルト処理の場合は null protected ModelAndView resolveResponseStatus(ResponseStatus responseStatus, HttpServletRequestEE request, HttpServletResponseEE response, ObjectSE handler, ExceptionSE ex) throws ExceptionSE
@ResponseStatus アノテーションを処理するテンプレートメソッド。 デフォルトの実装では、アノテーションに理由がある場合は HttpServletResponse.sendError(int)EE または HttpServletResponse.sendError(int, String)EE を使用してレスポンスエラーを送信し、空の ModelAndView を返します。
responseStatus - アノテーション request - 現在の HTTP リクエスト response - 現在の HTTP レスポンス handler - 実行されたハンドラー、または例外のときに何も選択されていない場合は null マルチパート解決が失敗した場合 ex - 例外 ExceptionSE