Interceptor実装サービス jp.ossc.nimbus.service.aop.interceptor.ExceptionHandlingInterceptorService

jp.ossc.nimbus.service.aop.interceptor.ExceptionHandlingInterceptorServiceは、発生した例外と例外を処理するExceptionHandlerのマッピングを行うInterceptor実装サービスです。

このサービスは、複合的なサービスで、以下のサービスを下位サービスとして使用します。

下位サービスインタフェース用途
ExceptionHandler例外を処理する。

以下に簡単なサービス定義を示します。

  1. <?xml version="1.0" encoding="Shift_JIS"?>
  2. <!DOCTYPE server PUBLIC
  3. "-//Nimbus//DTD Nimbus 1.0//JA"
  4. "http://nimbus.sourceforge.jp/dtd/nimbus-service_1_0.dtd">
  5. <server>
  6. <manager>
  7. <!-- 発生した例外をExceptionHandlerで処理するInterceptorサービス -->
  8. <service name="ExceptionHandlingInterceptor"
  9. code="jp.ossc.nimbus.service.aop.interceptor.ExceptionHandlingInterceptorService">
  10. <!-- 例外と例外を処理するExceptionHandlerサービスのサービス名のマッピングを設定する -->
  11. <attribute name="ExceptionAndHandlerMapping">
  12. java.lang.NullPointerException=#NullPointerExceptionHandler
  13. java.lang.Error=#ErrorExceptionHandler
  14. </attribute>
  15. <!-- 上記のマッピングに合致しない例外を処理するExceptionHandlerサービスのサービス名を設定する -->
  16. <attribute name="DefaultExceptionHandlerServiceName">#DefaultExceptionHandler</attribute>
  17. <depends>NullPointerExceptionHandler</depends>
  18. <depends>ErrorExceptionHandler</depends>
  19. <depends>DefaultExceptionHandler</depends>
  20. </service>
  21. <!-- 発生した例外を処理するExceptionHandlerサービス -->
  22. <service name="NullPointerExceptionHandler"
  23. code="jp.ossc.nimbus.service.aop.interceptor.DefaultExceptionHandlerService">
  24. <!-- ログ出力するログメッセージIDを設定する -->
  25. <attribute name="LogMessageCode">WARN</attribute>
  26. <!-- 例外をthrowするかどうかを設定する -->
  27. <attribute name="ThrowException">false</attribute>
  28. </service>
  29. <!-- 発生した例外を処理するExceptionHandlerサービス -->
  30. <service name="ErrorExceptionHandler"
  31. code="jp.ossc.nimbus.service.aop.interceptor.DefaultExceptionHandlerService">
  32. <!-- ログ出力するログメッセージIDを設定する -->
  33. <attribute name="LogMessageCode">FATAL</attribute>
  34. </service>
  35. <!-- 発生した例外を処理するExceptionHandlerサービス -->
  36. <service name="DefaultExceptionHandler"
  37. code="jp.ossc.nimbus.service.aop.interceptor.DefaultExceptionHandlerService">
  38. <!-- ログ出力するログメッセージIDを設定する -->
  39. <attribute name="LogMessageCode">ERROR</attribute>
  40. </service>
  41. </manager>
  42. </server>

ExceptionHandlingInterceptorService向けインタフェース ExceptionHandler

ExceptionHandlingInterceptorService向けインタフェースExceptionHandlerは、発生した例外を処理する機能を表します。

このインタフェースの実装サービスは、下位サービスで、以下の上位サービスから使用します。

上位サービス用途
jp.ossc.nimbus.service.aop.interceptor.ExceptionHandlingInterceptorService発生した例外を処理するために使用する。

このインタフェースを実装したサービスの一覧は以下のとおりです。

実装サービス実装概要
jp.ossc.nimbus.service.aop.interceptor.DefaultExceptionHandlerServiceデフォルト実装サービス。


アスペクト指向/Interceptor