[Seasar-user:4229] Re: 無設定 S2Struts のバリデーションについて
Naohiro Kuroda
[E-MAIL ADDRESS DELETED]
2006年 8月 1日 (火) 09:40:07 JST
永島さん
早速のご返答ありがとうございます。
commons-validator のバージョンは、1.1.4 で、同様のものでした。
Struts 1.2.4 で作成した既存システムをマイグレートしているのですが、validator-rules.xml を古いまま使
おうとしていたのが原因だったようです。
調査して頂きましてありがとうございました。
--- Katsuhiko Nagashima <[E-MAIL ADDRESS DELETED]> wrote:
> 永島です。
>
> 例外の内容からvalidatorの設定が原因かもしれません。
> 原因を特定するためにcommons-validatorのバージョンと
> validatorを定義しているxmlファイル(validator-rules.xml)の
> requiredの設定内容を教えてもらえないでしょうか。
>
> 私の以下の環境ではエラーは発生しませんでした。
> (環境が異なるのであまり参考にはならないかもしれませんが。。。)
> <環境>
> JDK1.5.0_05
> S2Struts-V1.2.5
> S2Struts-Tiger-V1.2.5
> Tomcat-5.0.28
> Struts-1.2.9
> commons-validator-1.1.4
> validator-rules.xml
> =================
> <validator name="required"
> classname="org.apache.struts.validator.FieldChecks"
> method="validateRequired"
> methodParams="java.lang.Object,
> org.apache.commons.validator.ValidatorAction,
> org.apache.commons.validator.Field,
> org.apache.struts.action.ActionMessages,
> org.apache.commons.validator.Validator,
> javax.servlet.http.HttpServletRequest"
> msg="errors.required"/>
> =================
>
> 06/07/31 に Naohiro Kuroda<[E-MAIL ADDRESS DELETED]> さんは書きました:
> > お世話になっております。
> >
> > 現在、Seasar2 を勉強中です。
> > バリデーションについて行き詰ってしまい、投稿させて頂きました。
> >
> > <問題点>
> > Tiger Annotation を使って、バリデーションを構築しようとしています。
> > ですが、クライアントサイドバリデーション(Java Script)は正常に動きますが、
> > サーバサイドバリデーションでは、下記のスタックトレースが出てバリデーションがかかりません。
> >
> > ====
> > 19:34:08,391 ERROR [ValidatorForm] validateRequired
> > org.apache.commons.validator.ValidatorException: validateRequired
> > at
> org.apache.commons.validator.ValidatorAction.loadValidationMethod(ValidatorAction.java:627)
> > at
> > org.apache.commons.validator.ValidatorAction.executeValidationMethod(ValidatorAction.java:557)
> > at org.apache.commons.validator.Field.validateForRule(Field.java:827)
> > at org.apache.commons.validator.Field.validate(Field.java:906)
> > at org.apache.commons.validator.Form.validate(Form.java:174)
> > at org.apache.commons.validator.Validator.validate(Validator.java:367)
> > at org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java:110)
> > at
> org.apache.struts.action.RequestProcessor.processValidate(RequestProcessor.java:950)
> > at
> >
>
org.seasar.struts.processor.S2TilesRequestProcessor.processValidate(S2TilesRequestProcessor.java:117)
> > at
> >
> org.seasar.struts.processor.ValidateProcessorImpl.processValidate(ValidateProcessorImpl.java:76)
> > at
> >
>
org.seasar.struts.processor.S2TilesRequestProcessor.processS2Validate(S2TilesRequestProcessor.java:110)
> > at org.seasar.struts.processor.AcceptorImpl.process(AcceptorImpl.java:93)
> > at
> > org.seasar.struts.processor.S2TilesRequestProcessor.process(S2TilesRequestProcessor.java:61)
> > at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
> > at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
> > at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> > at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> > at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> > at org.seasar.extension.filter.EncodingFilter.doFilter(EncodingFilter.java:62)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
> > at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> > at org.seasar.struts.filter.S2StrutsFilter.doFilter(S2StrutsFilter.java:45)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
> > at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> > at
> org.seasar.framework.container.filter.S2ContainerFilter.doFilter(S2ContainerFilter.java:60)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
> > at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> > at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
> > at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> > at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> > ====
> >
> > <FormBean>
> > ==== Form ====
> > @StrutsActionForm(name = "category1MasterForm")
> > public class Category1MasterForm implements Serializable {
> >
> > 省略
> >
> > @ValidateOrder(1)
> > @Required
> > public void setCategory1Id(String category1Id) {
> > this.category1Id = category1Id;
> > }
> > 省略
> > ============
> >
> > <環境>
> > JDK 5.0 (JRockit R26)
> > S2Struts-V1.2.5
> > S2Struts-Tiger-V1.2.5
> > JBoss-4.0.4.GA
> > Struts-1.2.9
> > Windows XP
> > eclipse 3.2
> > maven2.0.4
> >
> > 何か情報がございましたら教えて下さい。
> > よろしくお願い致します。
> >
> >
> > _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
> >
> > 黒田尚宏 <Naohiro Kuroda>
> >
> > [E-MAIL ADDRESS DELETED]
> >
> > _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
> >
> > _______________________________________________
> > Seasar-user mailing list
> > [E-MAIL ADDRESS DELETED]
> > https://www.seasar.org/mailman/listinfo/seasar-user
> >
>
>
> --
> Katsuhiko Nagashima
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://www.seasar.org/mailman/listinfo/seasar-user
>
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
黒田尚宏 <Naohiro Kuroda>
[E-MAIL ADDRESS DELETED]
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
Seasar-user メーリングリストの案内