Hi,
 
            Iīm trying to do a Validator class in Struts 1.2 with J2SE 1.4.2. I 
have got some sample codes, but all sample codes use Struts 1.1, and they donīt 
work at Struts 1.2... Can anyone send me a sample code of a Validator Class 
using Struts 1.2 ? Hereīs the code that isnīt working with me:
 
 
package test.package;
 
import java.io.Serializable;
 
import javax.servlet.http.HttpServletRequest;
 
import org.apache.commons.validator.GenericValidator;
import org.apache.commons.validator.ValidatorAction;
import org.apache.commons.validator.util.ValidatorUtils;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.validator.Resources;
 
public class GenericFloatValueStrutsValidator implements Serializable {
 
    public static boolean validateGenericFloatValue(
        Object arg,
        ValidatorAction va, 
        org.apache.commons.validator.Field field,
        org.apache.struts.action.ActionMessages actionMessages,
        HttpServletRequest request) {
 
        String floatValueAsString = ValidatorUtils.getValueAsString( arg, 
field.getProperty());
 
 
        if (!GenericValidator.isBlankOrNull(floatValueAsString)) {
           try {
               if ( ( floatValueAsString.indexOf(".") != 
floatValueAsString.lastIndexOf(".") ) ||
                       ( floatValueAsString.indexOf(",") != 
floatValueAsString.lastIndexOf(",") ) ||
                       ( floatValueAsString.indexOf(",") != -1 && 
floatValueAsString.indexOf(".") != -1 ) ) {
                   actionMessages.add( field.getKey(), new 
ActionMessage(field.getKey(),
                    Resources.getActionError(
                        request,
                        va,
                        field)) );
 
                 return false;
              }
           } catch (Exception e) {
                 e.printStackTrace();
                 return false;
           }
        }
 
        return true;
    }
 
}
 
 
validator-rules.xml:
 
      <validator name="genericFloatValue"
            classname="test.package.GenericFloatValueStrutsValidator"
               method="validateGenericFloatValue"
         methodParams="java.lang.Object arg,
                        org.apache.commons.validator.ValidatorAction va,
                        org.apache.commons.validator.Field field,
                        org.apache.struts.action.ActionMessages actionMessages,
                        javax.servlet.http.HttpServletRequest request"
              depends=""
              msg="errors.genericFloatValue"/>   
 
 
 
validation.xml:
 
<form name="/myAction">
      <field property="myProperty" depends="genericFloatValue">
            <arg0 key="frete.legenda.nome"/>
      </field>
</form>
 
 
 
in the JSP file:
 
<logic:messagesPresent property=" myProperty ">
      <bean:define id="errosMyProperty "><html:errors property=" myProperty 
"/></bean:define>
      <font class="txt_legenda"><%= errosMyProperty %></font>
</logic:messagesPresent>
 
 
Thanks in advance,
 
Sergio Stateri Jr.
[EMAIL PROTECTED]

Reply via email to