S2Struts
チェックボックス等で配列のプロパティを使用している場合に、Requiredを指定してもValidationの対象にならない。当然クライアントサイドJavaScriptが生成されない…これは仕様?またプリミティブ型の配列の場合、ClassCastExceptionが出る… java.lang.ClassC…
たとえば、アップロードされたファイルの拡張子を正規表現でチェックする場合に、 /** * @org.seasar.struts.validator.annotation.backport175.Mask(pattern="\\.csv$") */ という感じでアノテーションを指定する。当然、”.”をエスケープする必要があるのだ…
●Actionがnullを返した場合にExceptionが発生する問題を修正しました ●ファイルアップロード時、pageタグが動作しない問題を修正しました ○struts-configのinputを指定しなくて、かつ pageタグも利用しない場合に Validationを行うとStackOverflowErrorが発…
ファイルをダウンロードさせるActionの場合、ストリームにデータを書き込んだ後にnullを返すが、その後の処理でActionForwardがnullの場合の処理がないため、S2StrutsContextUtil.setPathメソッドでNullPointerExceptionが発生する。結果的にはinputがダウン…
RC2にバージョンアップしたら無事ファイルアップロードが出来るようになった。で、ちょっと気になったのが、フォームがenctype="multipart/form-data"になっている場合、が機能していない。Actionアノテーションでinputを指定すればいいのだが、せっかくの無…
StrutsActionアノテーションでinputを設定したら、エラーは出なくなった。しかし、せっかくdocRootをstruts-configで設定しているのに、inputにはフルパスで指定しないとMayaaでページが見つからないと怒られる。 試しに、inputをなくしてをフォームにつけて…
AcceptorImplのprocessにて、 ActionForm form = processor.processInputValueFormCreate(request, response, mapping); の部分で一度ストリームからフォームの値を読み込むと、 processor.processPopulate(request, response, form, mapping); の処理では既…
マニュアルの無設定のリファレンス … となっているが、実は以下の間違い … Validationのアノテーション validateをtrueにしたらStackOverFlowが発生…アノテーション以外は特に何も設定していない /** * @org.seasar.struts.annotation.backport175.StrutsAct…
例えばこんな感じで検索画面の初期情報を取得するActionを定義したとする。Formは特に必要ないのでactionタグのname属性は書かない(これっていいのかな?)。 これはこれでActionはちゃんと実行される。が、S2Strutsのオートバインディング機能が働いたとき…
Actionの実行結果を表示するJSPからPOJOFormを取ろうとしてもBeanValidatorFormだったのは、S2Strutsが元々のFormBeanをAction実行後にセットし直してるからなのか。先にソースを確認すべきだったorz ActionプロパティのInport/Exportはnullの場合は行われな…
JSP2.0で${POJOForm.hoge}として値を取得する場合に、requestの”hoge”にはBeanValidatorFormのインスタンスがセットされているため、${POJOForm.hoge}がエラーになってしまいその回避策として。
POJOをActionFormとして使ってみたのはいいけれど、Viewで値を取り出そうとしたら実はBeanValidatorFormなので全然駄目だった…POJOActionだったのでリクエストが触れずAction実行後にAOPを使ってリクエストにPOJOのインスタンスに戻して突っ込むことにした。…
ProxyActionでLookupDispatchAction使ったら、NullPointerExceptionが発生した。どうやらActionにActionServletが設定されていないようだ…ソースを見るとActionUtils#createActionでActionオブジェクトを取得しているのだが、ActionUtils#processActionCreat…