billbarker 2004/05/08 15:05:12 Modified: util/java/org/apache/tomcat/util/compat Jdk14Compat.java JdkCompat.java util/java/org/apache/tomcat/util/res StringManager.java Log: Enable parsing error messages in the given Locale when using a 1.4 JVM. Fix for bug #28850 Reported By: Stephane Bailliez [EMAIL PROTECTED] Revision Changes Path 1.10 +5 -0 jakarta-tomcat-connectors/util/java/org/apache/tomcat/util/compat/Jdk14Compat.java Index: Jdk14Compat.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-connectors/util/java/org/apache/tomcat/util/compat/Jdk14Compat.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- Jdk14Compat.java 15 Apr 2004 01:44:49 -0000 1.9 +++ Jdk14Compat.java 8 May 2004 22:05:11 -0000 1.10 @@ -20,6 +20,8 @@ import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; +import java.util.Locale; +import java.text.MessageFormat; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -116,4 +118,7 @@ wrapper.initCause(wrapped); } + public MessageFormat getMessageFormat(String pattern, Locale locale) { + return new MessageFormat(pattern, locale); + } } 1.14 +13 -0 jakarta-tomcat-connectors/util/java/org/apache/tomcat/util/compat/JdkCompat.java Index: JdkCompat.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-connectors/util/java/org/apache/tomcat/util/compat/JdkCompat.java,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- JdkCompat.java 15 Apr 2004 01:44:49 -0000 1.13 +++ JdkCompat.java 8 May 2004 22:05:11 -0000 1.14 @@ -21,8 +21,10 @@ import java.net.URL; import java.net.MalformedURLException; import java.util.Vector; +import java.util.Locale; import java.io.PrintWriter; import java.io.StringWriter; +import java.text.MessageFormat; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -222,4 +224,15 @@ public void chainException(Throwable wrapper, Throwable wrapped) { // do nothing } + + /** + * Obtain a MessageFormat for the correct pattern and Locale. + * + * @param pattern The pattern to format with. + * @param locale The Locale to use. + */ + public MessageFormat getMessageFormat(String pattern, Locale locale) { + return new MessageFormat(pattern); + } + } 1.5 +6 -2 jakarta-tomcat-connectors/util/java/org/apache/tomcat/util/res/StringManager.java Index: StringManager.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-connectors/util/java/org/apache/tomcat/util/res/StringManager.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- StringManager.java 24 Feb 2004 08:50:06 -0000 1.4 +++ StringManager.java 8 May 2004 22:05:11 -0000 1.5 @@ -22,6 +22,8 @@ import java.util.MissingResourceException; import java.util.ResourceBundle; +import org.apache.tomcat.util.compat.JdkCompat; + /** * An internationalization / localization helper class which reduces * the bother of handling ResourceBundles and takes care of the @@ -51,6 +53,7 @@ public class StringManager { + private static JdkCompat jdkcompat = JdkCompat.getJdkCompat(); /** * The ResourceBundle for this StringManager. */ @@ -154,7 +157,8 @@ } } if( value==null ) value=key; - iString = MessageFormat.format(value, nonNullArgs); + MessageFormat mf = jdkcompat.getMessageFormat(value, bundle.getLocale()); + iString = mf.format(nonNullArgs, new StringBuffer(), null).toString(); } catch (IllegalArgumentException iae) { StringBuffer buf = new StringBuffer(); buf.append(value);
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]