Use the validation-rules.xml that comes with the version of Struts
you're using. This exception usually happens when people upgrade their
version of Struts but don't use the validation-rules.xml that ships
with the new version.

Niall

On 3/29/07, davout <[EMAIL PROTECTED]> wrote:

I've added Struts validation to my application and I'm getting an exception
when I try to use the 'required' validation type.

Here's the code...

The 'validation.xml' file...

[Code]

 <?xml version="1.0" encoding="UTF-8"?>










 [/code]

the start of the 'validation-rules.xml' file...

[Code]






 [/code]

the related action class...

[Code]
 public class ImpactNegationEditAction extends AbstractImpactNegationAction
       implements EntityIDs, ImpactNegationIDs {

    public void save_onClick(FormActionContext aCtx) {
       ImpactNegationEditForm aForm = (ImpactNegationEditForm) aCtx.form();
       aCtx.addErrors(aForm.validate(aCtx.mapping(),aCtx.request()));
       if (aCtx.hasErrors() == false) {
          // is add?
          if (aForm.getImpactNegationIDInt() == ID_UNASSIGNED) {
             // verify title is unique
             try {
                ImpactNegation anOther =
getManager(aCtx).findByTitle(aForm.getTitle());
                if (anOther != null) {

addFieldError(aCtx,"title","error.duplicateField","Title");
                }
[/code]

the related form...

[Code]

 public abstract class AbstractSorForm extends FWValidatorForm {
 }

 public class ImpactNegationEditForm extends AbstractSorForm {

    private static final long serialVersionUID = 3604637580339030809L;

    private String fImpactNegationID;
    private String fTitle;
    private String fDesc;
    private String fDisplayOrder;
    private String fPercent;
    private String fCaptionDetail = null;
    private String fFormTitle = null;

    public ImpactNegationEditForm() {
       // TODO Auto-generated constructor stub
    }

    public String getDesc() {
       return fDesc;
    }

    public void setDesc(String aDesc) {
       fDesc = aDesc;
    }

    public String getDisplayOrder() {
       return fDisplayOrder;
    }
    public int getDisplayOrderInt() {
       return Integer.parseInt(fDisplayOrder);
    }

    public void setDisplayOrder(String aDisplayOrder) {
       fDisplayOrder = aDisplayOrder;
    }

    public String getImpactNegationID() {
       return fImpactNegationID;
    }

    public int getImpactNegationIDInt() {
       return Integer.parseInt(fImpactNegationID);
    }

    public void setImpactNegationID(String aId) {
       fImpactNegationID = aId;
    }

    public String getPercent() {
       return fPercent;
    }
    public double getPercentDouble() {
       return Double.parseDouble(fPercent);
    }

    public void setPercent(String aPercent) {
       fPercent = aPercent;
    }

    public String getTitle() {
       return fTitle;
    }

    public void setTitle(String aTitle) {
       fTitle = aTitle;
    }

    public String getCaptionDetail() {
       return fCaptionDetail;
    }

    public void setCaptionDetail(String aCaptionDetail) {
       fCaptionDetail = aCaptionDetail;
    }

    public String getFormTitle() {
       return fFormTitle;
    }

    public void setFormTitle(String aFormTitle) {
       fFormTitle = aFormTitle;
    }
 }
[/code]

the JSP body file...

[Code]


























[/code]

the exception thrown...

[Code:]

the exception thrown when the form is validated...
 ERROR: 18:54:18: org.apache.struts.validator.ValidatorForm:
org.apache.struts.validator.FieldChecks.validateRequired(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)
 org.apache.commons.validator.ValidatorException:
org.apache.struts.validator.FieldChecks.validateRequired(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)
   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:811)
   at org.apache.commons.validator.Field.validate(Field.java:890)
   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:112)
   at
com.eis.sor.struts.action.impactnegation.ImpactNegationEditAction.save_onClick(ImpactNegationEditAction.java:84)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at com.cc.framework.adapter.struts.ActionUtil.handleFormAction(Unknown
Source)
   at com.cc.framework.adapter.struts.FWAction.handleFormAction(Unknown
Source)
   at com.cc.framework.adapter.struts.ActionUtil.execute(Unknown Source)
   at com.cc.framework.adapter.struts.FWAction.execute(Unknown Source)
   at
com.eis.sor.struts.action.common.AbstractSorAction.execute(AbstractSorAction.java:30)
   at com.cc.framework.adapter.struts.FWAction.execute(Unknown Source)
   at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
   at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
   at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
   at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
[/code]


Any ideas???


--
View this message in context: 
http://www.nabble.com/Struts-1.2-validation-not-working%21-tf3484580.html#a9727581
Sent from the Struts - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to