You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@turbine.apache.org by ep...@apache.org on 2004/12/03 11:43:13 UTC

cvs commit: jakarta-turbine-2/src/java/org/apache/turbine/util/parser DefaultParameterParser.java

epugh       2004/12/03 02:43:13

  Modified:    xdocs    changes.xml
               src/java/org/apache/turbine/util/parser
                        DefaultParameterParser.java
  Log:
  Handle non US-ASCII encoding with multipart/form-data mimetype properly.
  
  Revision  Changes    Path
  1.96      +3 -0      jakarta-turbine-2/xdocs/changes.xml
  
  Index: changes.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-turbine-2/xdocs/changes.xml,v
  retrieving revision 1.95
  retrieving revision 1.96
  diff -u -r1.95 -r1.96
  --- changes.xml	24 Nov 2004 18:23:44 -0000	1.95
  +++ changes.xml	3 Dec 2004 10:43:13 -0000	1.96
  @@ -24,6 +24,9 @@
   
     <body>
       <release version="2.4-M2" date="in cvs">
  +      <action dev="epugh" type="fix" due-to="Leandro Rodrigo Saad Cruz">
  +        Handle non US-ASCII encoding with multipart/form-data mimetype better.
  +      </action> 		
         <action dev="epugh" type="remove">
           Remove Merlin service.  When the replacement for Merlin (Metro) is released, then
           add back in support.
  
  
  
  1.22      +20 -2     jakarta-turbine-2/src/java/org/apache/turbine/util/parser/DefaultParameterParser.java
  
  Index: DefaultParameterParser.java
  ===================================================================
  RCS file: /home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/util/parser/DefaultParameterParser.java,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- DefaultParameterParser.java	16 Feb 2004 07:06:27 -0000	1.21
  +++ DefaultParameterParser.java	3 Dec 2004 10:43:13 -0000	1.22
  @@ -69,6 +69,8 @@
   import org.apache.commons.logging.Log;
   import org.apache.commons.logging.LogFactory;
   
  +import org.apache.turbine.Turbine;
  +import org.apache.turbine.TurbineConstants;
   import org.apache.turbine.services.upload.TurbineUpload;
   import org.apache.turbine.services.upload.UploadService;
   
  @@ -106,6 +108,8 @@
       extends BaseValueParser
       implements ParameterParser, Recyclable
   {
  +    private String defaultCharSet;
  +
       /** Logging */
       private static Log log = LogFactory.getLog(DefaultParameterParser.class);
   
  @@ -189,6 +193,19 @@
           return this.request;
       }
   
  +	private String getDefaultCharset()
  +	{
  +		if (defaultCharSet == null)
  +		{
  +			/* Get the default charset and cache it in a static variable. */
  +			defaultCharSet = Turbine.getConfiguration()
  +				.getString(TurbineConstants.LOCALE_DEFAULT_CHARSET_KEY,
  +					TurbineConstants.LOCALE_DEFAULT_CHARSET_DEFAULT);
  +			log.debug("defaultCharSet = " + defaultCharSet + " (From Properties)");
  +		}
  +		return defaultCharSet;
  +	}
  +
       /**
        * Sets the servlet request to be parser.  This requires a
        * valid HttpServletRequest object.  It will attempt to parse out
  @@ -209,7 +226,8 @@
           uploadData = null;
   
           String enc = request.getCharacterEncoding();
  -        setCharacterEncoding(enc != null ? enc : "US-ASCII");
  +		String charset = getDefaultCharset();
  +        setCharacterEncoding(enc != null ? enc : charset);
   
           // String object re-use at its best.
           String tmp = null;
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: turbine-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: turbine-dev-help@jakarta.apache.org