[Seasar-user:15527] Re: [S2Struts] S2Struts1.3.0-RC6からActionへのforwardでエラー

Toshihiro Nakamura [E-MAIL ADDRESS DELETED]
2008年 8月 26日 (火) 23:31:24 JST


中村(taedium)です。

> S2Struts1.3.xにて、一度s2submitタグで該当画面のActionを呼び、
> そのAction内で次画面のActionにforwardするよう指示して画面の遷移を行おうと
> していますが、
> forward時に再帰が原因と思われるStackOverflowErrorが発生します。

報告ありがとうございます。

S2Strutsの不具合でした。
S2StrutsのSubmitタグなどでActionの式を使用した場合、
リクエストスコープの情報で呼び出すActionを決定しているのですが、
Forwardした際もこの情報が残ったままになっていて何度も同じActionが
呼ばれるようになっていました。

修正してSNAPSHOTを作成したのでよければご確認ください。

http://maven.seasar.org/maven2-snapshot/org/seasar/struts/s2-struts/1.3.1-SNAPSHOT/s2-struts-1.3.1-20080826.142112-2.jar
http://maven.seasar.org/maven2-snapshot/org/seasar/struts/s2-struts-tiger/1.3.1-SNAPSHOT/s2-struts-tiger-1.3.1-20080826.142147-2.jar

動作させるには上記SNAPSHOTの利用に加えweb.xmlの修正が必要です。
S2StrutsFilterがFOWARDとINCLUDEにも適用されるように設定してください。

  <filter>
    <filter-name>s2strutsfilter</filter-name>
    <filter-class>org.seasar.struts.filter.S2StrutsFilter</filter-class>
  </filter>

(略)

  <filter-mapping>
    <filter-name>s2strutsfilter</filter-name>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>INCLUDE</dispatcher>
  </filter-mapping>
-- 
Toshihiro Nakamura



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