[s2struts-dev:64] Re: S2Struts1.3でいつくか質問

Takahiro Yuasa [E-MAIL ADDRESS DELETED]
2008年 6月 18日 (水) 10:27:13 JST


湯浅です。

>> 使わせていただき、気付くことがありましたら、またご連絡させていただきます。
>> (今週、ちょっと時間が取れるか微妙ですが。。。)
> ぜひ、お願いします。
> 今週中でなくとも(来週でも)ぜんぜん構わないです。

なかなか時間が取れず、ご連絡が遅くなってしまい、すみません。
S2Struts V1.3.0-RC3 を用いて私共で作成したアプリケーションがありまして、
それを試しにV1.3.0-RC6 にアップデートしてみました。
その過程で若干ハマったことと、アップデートによる挙動変更で発生した困り事
について、ご報告いたします。

【ハマったこと】
RC6 では、JARに含まれている s2struts-chain-config.xml が変更になり、
SetHttpServletRequestコマンドが使用されなくなりました。
またSetHttpServletRequestクラス自体も削除されました。
一方、私共では s2struts-chain-config.xml をJARから外に出しカスタマイズして
使用しております。そのため、JARを入れ替えても、外出しした xml の内容の方が
有効となり、エラーが起こって起動できなくなる事象が発生しました。
(この事象はカスタマイズしたs2struts-chain-configを修正することで解消しました。)

s2struts-chain-config.xmlに関する変更の情報は
 http://www.seasar.org/wiki/index.php?S2StrutsUpdateOperationLog
などに記載がありませんでしたので、移行時のハマりどころになるやもと思います。
よろしければ、上記ページ辺りへの追記をご検討いただければと思います。


【困り事】
私共のアプリでは、
 S2StrutsContextUtil#getMethodBindingExpression()
を使用して、S2StrutsApplContext にセットされている MethodBindingExpression
を取得し、使用している箇所があります。
V1.3.0-RC6 にアップデートしたところ、これが取得できなくなってしまいました。
ちょっと見たところでは、カスタムタグの実装が大きく変わり、S2StrutsApplContext
に MethodBindingExpression がセットされなくなっているように見受けられました。
RC6 以降では、S2StrutsApplContext から MethodBindingExpression を取得すること
は出来なくなってしまうのでしょうか?

また、私共のアプリでは、複数のボタンに対して一つのActionメソッド
でリクエストを受け付け、ボタンの property 属性で設定した値(つまり、ポスト
されたname の値)で、どのボタンが押されたかを見分けている箇所があります。
RC6 から submitボタンなどの property 属性をセット出来なくなってしまう
(正確には、property 属性をタグに記述しても無視される)ようですが、
上記のように property 属性の設定値を利用する方法は採れなくなってしまうので
しょうか?


#以降は、上記の報告とは関係ない余談です。

【余談1】
S2Strutsのサイトで、ダウンロードのリンクが全てデッドリンクになっているようです。
(V1.2、V1.3共です。) ご確認いただければ幸いです。


【余談2】
http://d.hatena.ne.jp/taedium/20080616/p1
を拝見しました。私共のアプリもこれとほぼ同じ構成になっており、自分たちの設計は
間違いじゃなかったんだと、とても安心しました(^ ^
若干違っていたのは、私共ではActionとInitActionを一つにしていて、
 1ページ(画面): 1Action ・ 1Form ・ 1HTML  (VIEWがMayaaなので)
としているところでした。
私共では更に、この構成でディレクトリ配置はTeedaに倣い、Matatabi と Dolteng
を設定することで、Action ⇔ HTML ⇔ Mayaa のホットキー移動(Formはさすがに無理
ですが)や、view on server を使っています。なかなか便利ですよ♪


以上です。
よろしくお願いいたします。

--
Takahiro Yuasa


s2struts-dev メーリングリストの案内