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]