[Seasar-user:12823] Re: [S2]ThrowsInterceptorが呼び出されない
小山 健二
[E-MAIL ADDRESS DELETED]
2008年 2月 12日 (火) 17:27:26 JST
小林さん
小山です。お世話になっています。
アドバイス頂いた方法で、oracleSQLExceptionThrowsInterceptor を
呼びさせるようになりました。ありがとうございます。
さらに、Exceptionが発生したら、とにかくメールで通知させようとしています。
そこで、oracleSQLExceptionThrowsInterceptor と同様にdiconを設定して
HandleThrowableInterceptorなるものを呼び出すところまでできました。
この処理の中で、メールを送信させようとしています。
Cool deeploy の時は、以下の内容でメール送信mailSenderが呼び出されるのですが、
Hot deploy の時に、mailSenderが呼び出されません。
どうも、コンポーネントがロードされていないようです。
Hot deployで、呼び出せるようにしたいのですが、
アドバイス頂けないでしょうか?
app_app.dicon
<components namespace="app_aop">
<include path="convention.dicon"/>
<component name="actionSupportInterceptor" class="org.seasar.teeda.extension.interceptor.ActionSupportInterceptor" />
<component name="appFacesExceptionThrowsInterceptor" class="org.seasar.teeda.core.interceptor.AppFacesExceptionThrowsInterceptor" />
<component name="loginAuthInterceptor" class="hoge.interceptor.LoginAuthInterceptor" />
<component name="handleThrowableInterceptor" class="hoge.interceptor.HandleThrowableInterceptor"/>
<component name="oracleSQLExceptionThrowsInterceptor" class="hoge.interceptor.OracleSQLExceptionThrowsInterceptor"/>
</components>
customizer.dicon
<component name="mailSender" class="hoge.service.MailSenderImpl" />
<component name="handleThrowableInterceptor" class="hoge.interceptor.HandleThrowableInterceptor">
<property name="mailSender">mailSender</property>
</component>
*Hotのときには、上の設定では、hoge.service.MailSenderImpl が登録されないようです。
<component name="handleThrowableCustomizer" class="org.seasar.framework.container.customizer.AspectCustomizer">
<property name="interceptorName">"app_aop.handleThrowableInterceptor"</property>
</component>
<component name="oracleCustomizer" class="org.seasar.framework.container.customizer.AspectCustomizer">
<property name="interceptorName">"app_aop.oracleSQLExceptionThrowsInterceptor"</property>
</component>
<component name="daoSupportAspectCustomizer" class="org.seasar.framework.container.customizer.AspectCustomizer">
<property name="interceptorName">"dao.interceptor"</property>
</component>
<component name="daoCustomizer" class="org.seasar.framework.container.customizer.CustomizerChain">
<initMethod name="addCustomizer">
<arg>defaultCustomizer</arg>
</initMethod>
<initMethod name="addCustomizer">
<arg>handleThrowableCustomizer</arg>
</initMethod>
<initMethod name="addCustomizer">
<arg>oracleCustomizer</arg>
</initMethod>
<initMethod name="addCustomizer">
<arg>daoSupportAspectCustomizer</arg>
</initMethod>
</component>
バージョンは以下のとおりです。
S2 2.4.11
S2Dao 1.0.40
Teeda 1.0.6
--
(^_^)試して見る事に失敗はない。明日は今日と違う自分になる。
小山健二 (Kenji Koyama)
[E-MAIL ADDRESS DELETED]
Seasar-user メーリングリストの案内