patrickl    2002/08/01 10:20:36

  Modified:    coyote/src/java/org/apache/coyote Response.java
               coyote/src/java/org/apache/coyote/tomcat4
                        CoyoteResponse.java
  Log:
  Servlet 2.4 spec says that ServletResponse now gets two more methods, (from sections 
5.4, 14.2.22) Namely;
        String getContentType();
        void   setCharacterEncoding(String charset)
  Submitted by: Bob Herrmann ([EMAIL PROTECTED])
  
  Revision  Changes    Path
  1.12      +29 -0     
jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/Response.java
  
  Index: Response.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/Response.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- Response.java     9 Apr 2002 18:19:27 -0000       1.11
  +++ Response.java     1 Aug 2002 17:20:36 -0000       1.12
  @@ -443,6 +443,35 @@
   
       }
   
  +    /*
  +     * Overrides the name of the character encoding used in the body
  +     * of the request. This method must be called prior to reading
  +     * request parameters or reading input using getReader().
  +     *
  +     * @param charset String containing the name of the chararacter encoding.
  +     */
  +    public void setCharacterEncoding(String charset) {
  +
  +        if (isCommitted())
  +            return;
  +
  +        characterEncoding = charset;
  +
  +        String type = this.contentType;
  +        int start = type.indexOf("charset=");
  +        if ( start != -1 ) {
  +            int end = type.indexOf(';', start+8);
  +            if (end >= 0) 
  +                type = type.substring(0,start+8)
  +                    +charset+type.substring(end-1);
  +            else 
  +                type = type.substring(0,start+8)
  +                    +charset;
  +            this.contentType = type;
  +
  +        }
  +    }
  +
       public String getCharacterEncoding() {
        return characterEncoding;
       }
  
  
  
  1.19      +22 -4     
jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/tomcat4/CoyoteResponse.java
  
  Index: CoyoteResponse.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/tomcat4/CoyoteResponse.java,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- CoyoteResponse.java       28 Jun 2002 11:25:54 -0000      1.18
  +++ CoyoteResponse.java       1 Aug 2002 17:20:36 -0000       1.19
  @@ -717,6 +717,24 @@
       }
   
   
  +    /*
  +     * Overrides the name of the character encoding used in the body
  +     * of the request. This method must be called prior to reading
  +     * request parameters or reading input using getReader().
  +     *
  +     * @param charset String containing the name of the chararacter encoding.
  +     */
  +    public void setCharacterEncoding(String charset) {
  +
  +        if (isCommitted())
  +            return;
  +
  +        if (included)
  +            return;     // Ignore any call from an included servlet
  +
  +     coyoteResponse.setCharacterEncoding(charset);
  +    }
  +
       /**
        * Set the Locale that is appropriate for this response, including
        * setting the appropriate character encoding.
  
  
  

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

Reply via email to