[Seasar-user:9717] Re: Page クラスで強制ロールバック

[E-MAIL ADDRESS DELETED] [E-MAIL ADDRESS DELETED]
2007年 8月 6日 (月) 20:37:53 JST


お疲れ様です。TuMikiです。

app_aop.diconに
    <component name="appThrowsInterceptor" class="org.seasar.teeda.core.interc
eptor.AppThrowsInterceptor" />
を追加して、
customizer.diconのpageCustomizerコンポーネントに
    <initMethod name="addCustomizer">
      <arg>
        <component class="org.seasar.framework.container.customizer.AspectCust
omizer">
          <property name="interceptorName">"app_aop.appThrowsInterceptor"</pro
perty>
          <property name="pointcut">"do.*, initialize, prerender"</property>
        </component>
      </arg>
    </initMethod>
として追加することで、無事エラーコードが画面に表示されました。

ありがとうございました。

ついでですが、
Pageクラスのメソッドでトランザクション制御をする場合は、
    <initMethod name="addCustomizer">
      <arg>
        <component class="org.seasar.framework.container.customizer.AspectCust
omizer">
          <property name="interceptorName">"j2ee.requiredTx"</property>
          <property name="pointcut">"do.*, initialize, prerender"</property>
        </component>
      </arg>
    </initMethod>
と記述するようです。

S2の機能リファレンス>トランザクション制御を設定する>ページのコンポーネントに
適応する場合にある、
    <initMethod name="addAspectCustomizer">
      <arg>requiredTxCustomizer</arg>
      <arg>"do.*, initialize, prerender"</arg>
    </initMethod>
では、どうゆうわけかうまくいきませんでした。
当方の誤解でしたら、ごめんなさい。
以上


----- Original Message -----
>Date: Mon, 06 Aug 2007 11:14:49 +0900
>From: Yasuo Higa <[E-MAIL ADDRESS DELETED]>
>To: [E-MAIL ADDRESS DELETED]
>Subject: [Seasar-user:9688] Re:
> Page クラスで強制ロールバック
>
>
>ひがです。
>
>> 久保と申します。
>> 
>> > お世話になっております。TuMikiです。
>> > 
>> > Pageクラスで複数のDaoメソッドを作ろうとしています。
>> > 入力系ですので、エラーが発生したときにエラーページに飛ぶのではなく
>> > そのまま画面にメッセージを表示したいのですが、
>> > 普通に終わってしまうと、DBに対してコミットが発行されると予想しています。
>> > Pageクラス内で、強制的にロールバックを発行するサンプルとかありませんで
>> > しょうか?
>> 
>org.seasar.teeda.core.interceptor.AppThrowsInterceptor
>をPageクラスに設定し、Pageクラスでは、
>SRuntimeExceptionを継承した例外をthrowすると
>目的のことができると思います。
>
>--
>Yasuo Higa
>[E-MAIL ADDRESS DELETED]
>_______________________________________________
>Seasar-user mailing list
>[E-MAIL ADDRESS DELETED]
>https://ml.seasar.org/mailman/listinfo/seasar-user




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