Index: src/share/org/apache/struts/util/StrutsValidatorUtil.java
===================================================================
RCS file: /home/cvspublic/jakarta-struts/src/share/org/apache/struts/util/StrutsValidatorUtil.java,v
retrieving revision 1.2
diff -w -i -r1.2 StrutsValidatorUtil.java
67,71d66
< import org.apache.struts.action.Action;
< import org.apache.struts.action.ActionError;
< import org.apache.struts.action.ActionErrors;
< import org.apache.struts.util.MessageResources;
< import org.apache.commons.beanutils.PropertyUtils;
77c72,74
< import org.apache.commons.validator.ValidatorUtil;
---
> import org.apache.struts.action.Action;
> import org.apache.struts.action.ActionError;
> import org.apache.struts.action.ActionErrors;
80d76
< 
174a171,187
> 
>    //BEGIN
>    /**
>     * Gets the locale sensitive message based on the <code>ValidatorAction</code> message and the
>     * <code>Field</code>'s arg objects.
>     */
>    public static String getMessage(ServletContext servletContext, Locale locale,
>                                    ValidatorAction va, Field field) {
> 
>       String arg[] = getArgs(va.getName(), servletContext, locale, field);
>       String msg = (field.getMsg(va.getName()) != null ? field.getMsg(va.getName()) : va.getMsg());
> 
>       MessageResources messages = getMessageResources(servletContext);
>       return messages.getMessage(locale, msg, arg[0], arg[1], arg[2], arg[3]);
>    }
>    //END
> 
200a214,294
> 
>    /**
>     * Gets the <code>Locale</code> sensitive value based on the key passed in.
>     */
>    public static String getMessage(ServletContext servletContext, Locale locale, Arg arg) {
>       String message = null;
>       String bundle = arg.getBundle();
>       MessageResources messages = null;
>       if ( bundle == null ) {
>          messages = getMessageResources(servletContext);
>       }
>       else {
>          messages = (MessageResources)
>                 servletContext.getAttribute(bundle);
>       }
> 
>       if (messages != null) {
>          message = messages.getMessage(locale, arg.getKey());
>       }
> 
>       if (message == null) {
>          message = "";
>       }
> 
>       return message;
>    }
> 
>    /**
>     * Gets the message arguments based on the current <code>ValidatorAction</code>
>     * and <code>Field</code>.
>     */
>    public static String[] getArgs(String actionName, ServletContext servletContext,
>                                   Locale locale, Field field) {
> 
>       Arg arg0 = field.getArg0(actionName);
>       Arg arg1 = field.getArg1(actionName);
>       Arg arg2 = field.getArg2(actionName);
>       Arg arg3 = field.getArg3(actionName);
> 
>       String sArg0 = null;
>       String sArg1 = null;
>       String sArg2 = null;
>       String sArg3 = null;
> 
>       if (arg0 != null) {
>          if (arg0.getResource()) {
> 
>             sArg0 = getMessage(servletContext, locale, arg0);
>          } else {
>             sArg0 = arg0.getKey();
>          }
>       }
> 
>       if (arg1 != null) {
>          if (arg1.getResource()) {
>             sArg1 = getMessage(servletContext, locale, arg1);
>          } else {
>             sArg1 = arg1.getKey();
>          }
>       }
> 
>       if (arg2 != null) {
>          if (arg2.getResource()) {
>             sArg2 = getMessage(servletContext, locale, arg2);
>          } else {
>             sArg2 = arg2.getKey();
>          }
>       }
> 
>       if (arg3 != null) {
>          if (arg3.getResource()) {
>             sArg3 = getMessage(servletContext, locale, arg3);
>          } else {
>             sArg3 = arg3.getKey();
>          }
>       }
> 
>       return new String[]{sArg0, sArg1, sArg2, sArg3};
> 
>    }
> 

