[Seasar-user:12806] Re: [S2]ThrowsInterceptorが呼び出されない

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2008年 2月 9日 (土) 21:59:59 JST


小林 (koichik) です.

Date:    Sat, 09 Feb 2008 14:20:19 +0900
From:    小山 健二 <[E-MAIL ADDRESS DELETED]>
To:      [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:12802] [S2]ThrowsInterceptorが呼び出されない

> customizer.dicon
> <component name="oracleCustomizer" class="org.seasar.framework.container.customizer.AspectCustomizer">
> 	<property name="interceptorName">"oracleSQLExceptionThrowsInterceptor"</property>
> </component>

これだけではこの oracleCustomizer はどこからも
使われません.

この Customizer を Dao に適用するなら daoCustomizer に
加える必要があります.

<component name="daoCustomizer" class="org.seasar.framework.container.customizer.CustomizerChain">
  <initMethod name="addCustomizer">
    <arg>oracleCustomizer</arg>
  </initMethod>
  <initMethod name="addCustomizer">
    <arg>s2DaoCustomizer</arg>
  </initMethod>
</component>

oracleCustomizer は s2DaoCustomizer より前に
追加する必要があります.


もし Dao ではなく Page クラスに適用するなら,
oracleCustomizer にポイントカットを設定する
必要があります.

<component name="oracleCustomizer" class="org.seasar.framework.container.customizer.AspectCustomizer">
  <property name="interceptorName">"oracleSQLExceptionThrowsInterceptor"</property>
  <property name="pointcut">"do.*, initialize, prerender"</property>
</component>

そして pageCustomizer に追加します.

<component name="pageCustomizer" class="org.seasar.framework.container.customizer.CustomizerChain">
  <initMethod name="addCustomizer">
    <arg>oracleCustomizer</arg>
  </initMethod>
</component>



-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>



Seasar-user メーリングリストの案内