dgraham     2003/07/25 17:40:29

  Modified:    src/share/org/apache/struts/validator Resources.java
                        FieldChecks.java
  Log:
  Deprecated Resources.getLocale() because it created sessions.  Use
  RequestUtils.getUserLocale() instead.
  
  Revision  Changes    Path
  1.18      +35 -28    
jakarta-struts/src/share/org/apache/struts/validator/Resources.java
  
  Index: Resources.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/validator/Resources.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- Resources.java    25 Jul 2003 23:55:37 -0000      1.17
  +++ Resources.java    26 Jul 2003 00:40:29 -0000      1.18
  @@ -149,16 +149,11 @@
      /**
       * Get the <code>Locale</code> of the current user.
       * @param request servlet request
  +    * @deprecated Use RequestUtils.getUserLocale() instead.  This will be removed
  +    * after Struts 1.2.
       */
       public static Locale getLocale(HttpServletRequest request) {
  -        Locale locale = null;
  -        try {
  -            locale = (Locale) request.getSession().getAttribute(Globals.LOCALE_KEY);
  -        } catch (IllegalStateException e) {
  -            // Invalidated session
  -        }
  -    
  -        return (locale == null) ? Locale.getDefault() : locale;
  +        return RequestUtils.getUserLocale(request, null);
       }
   
      /**
  @@ -182,11 +177,11 @@
       * @param request servlet request
       * @param key the request key
       */
  -   public static String getMessage(HttpServletRequest request, String key) {
  -      MessageResources messages = getMessageResources(request);
  -
  -      return getMessage(messages, getLocale(request), key);
  -   }
  +    public static String getMessage(HttpServletRequest request, String key) {
  +        MessageResources messages = getMessageResources(request);
  +    
  +        return getMessage(messages, RequestUtils.getUserLocale(request, null), key);
  +    }
   
      /**
       * Gets the locale sensitive message based on the <code>ValidatorAction</code> 
message and the
  @@ -206,20 +201,32 @@
      }
   
      /**
  -    * Gets the <code>ActionError</code> based on the <code>ValidatorAction</code> 
message and the
  -    * <code>Field</code>'s arg objects.
  +    * Gets the <code>ActionError</code> based on the 
  +    * <code>ValidatorAction</code> message and the <code>Field</code>'s 
  +    * arg objects.
       * @param request the servlet request
       * @param va Validator action
       * @param field the validator Field
       */
  -   public static ActionError getActionError(HttpServletRequest request,
  -                                            ValidatorAction va, Field field) {
  -
  -      String args[] = getArgs(va.getName(), getMessageResources(request), 
getLocale(request), field);
  -      String msg = (field.getMsg(va.getName()) != null ? field.getMsg(va.getName()) 
: va.getMsg());
  -
  -      return new ActionError(msg, args);
  -   }
  +    public static ActionError getActionError(
  +        HttpServletRequest request,
  +        ValidatorAction va,
  +        Field field) {
  +    
  +        String args[] =
  +            getArgs(
  +                va.getName(),
  +                getMessageResources(request),
  +                RequestUtils.getUserLocale(request, null),
  +                field);
  +                
  +        String msg =
  +            field.getMsg(va.getName()) != null
  +                ? field.getMsg(va.getName())
  +                : va.getMsg();
  +    
  +        return new ActionError(msg, args);
  +    }
   
      /**
       * Gets the message arguments based on the current <code>ValidatorAction</code>
  @@ -284,7 +291,7 @@
           ValidatorResources resources =
               Resources.getValidatorResources(application, request);
               
  -        Locale locale = Resources.getLocale(request);
  +        Locale locale = RequestUtils.getUserLocale(request, null);
       
           Validator validator = new Validator(resources, key);
           validator.setUseContextClassLoader(true);
  
  
  
  1.11      +6 -4      
jakarta-struts/src/share/org/apache/struts/validator/FieldChecks.java
  
  Index: FieldChecks.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/validator/FieldChecks.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- FieldChecks.java  25 Jun 2003 01:32:31 -0000      1.10
  +++ FieldChecks.java  26 Jul 2003 00:40:29 -0000      1.11
  @@ -63,6 +63,7 @@
   import java.io.Serializable;
   import java.util.Date;
   import java.util.Locale;
  +
   import javax.servlet.http.HttpServletRequest;
   
   import org.apache.commons.logging.Log;
  @@ -73,6 +74,7 @@
   import org.apache.commons.validator.ValidatorAction;
   import org.apache.commons.validator.ValidatorUtil;
   import org.apache.struts.action.ActionErrors;
  +import org.apache.struts.util.RequestUtils;
   
   /**
    * <p>
  @@ -535,7 +537,7 @@
           }
           String datePattern = field.getVarValue("datePattern");
           String datePatternStrict = field.getVarValue("datePatternStrict");
  -        Locale locale = Resources.getLocale(request);
  +        Locale locale = RequestUtils.getUserLocale(request, null);
   
           if (!GenericValidator.isBlankOrNull(value)) {
               try {
  
  
  

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

Reply via email to