pier        01/08/08 12:26:07

  Modified:    catalina/src/share/org/apache/catalina/connector
                        HttpResponseBase.java
               catalina/src/share/org/apache/catalina/connector/http
                        HttpResponseImpl.java
               catalina/src/share/org/apache/catalina/connector/http10
                        HttpResponseImpl.java
  Log:
  Fixed problem of HTTP/1.1 container returning the same version of the
  HTTP protocol used in the request. As Justyn Erkerantz said, Section 3.1
  of the HTTP specification (RFC-2616) mentions the fact that we should
  return the higher version of the implemented protocol.
  
  Revision  Changes    Path
  1.36      +17 -5     
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/HttpResponseBase.java
  
  Index: HttpResponseBase.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/HttpResponseBase.java,v
  retrieving revision 1.35
  retrieving revision 1.36
  diff -u -r1.35 -r1.36
  --- HttpResponseBase.java     2001/07/22 20:25:06     1.35
  +++ HttpResponseBase.java     2001/08/08 19:26:07     1.36
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/HttpResponseBase.java,v
 1.35 2001/07/22 20:25:06 pier Exp $
  - * $Revision: 1.35 $
  - * $Date: 2001/07/22 20:25:06 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/HttpResponseBase.java,v
 1.36 2001/08/08 19:26:07 pier Exp $
  + * $Revision: 1.36 $
  + * $Date: 2001/08/08 19:26:07 $
    *
    * ====================================================================
    *
  @@ -100,7 +100,7 @@
    *
    * @author Craig R. McClanahan
    * @author Remy Maucherat
  - * @version $Revision: 1.35 $ $Date: 2001/07/22 20:25:06 $
  + * @version $Revision: 1.36 $ $Date: 2001/08/08 19:26:07 $
    */
   
   public class HttpResponseBase
  @@ -539,6 +539,17 @@
           logger.log(message, throwable);
       }
   
  +    /**
  +     * Return the HTTP protocol version implemented by this response
  +     * object. (This method must be overridden by subclasses of this
  +     * as to correctly return the highest HTTP version number supported
  +     * as specified in Section 3.1 of RFC-2616).
  +     *
  +     * @return A string in the form of "HTTP/1.0" ...
  +     */
  +    protected String getProtocol() {
  +        return(request.getRequest().getProtocol());
  +    }
   
       /**
        * Send the HTTP response headers, if this has not already occurred.
  @@ -548,6 +559,7 @@
           if (isCommitted())
               return;
   
  +        // Check if the request was an HTTP/0.9 request
           if ("HTTP/0.9".equals(request.getRequest().getProtocol())) {
               committed = true;
               return;
  @@ -559,7 +571,7 @@
           final PrintWriter outputWriter = new PrintWriter(osr);
   
           // Send the "Status:" header
  -        outputWriter.print(request.getRequest().getProtocol());
  +        outputWriter.print(this.getProtocol());
           outputWriter.print(" ");
           outputWriter.print(status);
           if (message != null) {
  
  
  
  1.11      +17 -5     
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpResponseImpl.java
  
  Index: HttpResponseImpl.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpResponseImpl.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- HttpResponseImpl.java     2001/07/22 20:25:07     1.10
  +++ HttpResponseImpl.java     2001/08/08 19:26:07     1.11
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpResponseImpl.java,v
 1.10 2001/07/22 20:25:07 pier Exp $
  - * $Revision: 1.10 $
  - * $Date: 2001/07/22 20:25:07 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpResponseImpl.java,v
 1.11 2001/08/08 19:26:07 pier Exp $
  + * $Revision: 1.11 $
  + * $Date: 2001/08/08 19:26:07 $
    *
    * ====================================================================
    *
  @@ -79,7 +79,7 @@
    *
    * @author Craig R. McClanahan
    * @author <a href="mailto:[EMAIL PROTECTED]";>Remy Maucherat</a>
  - * @version $Revision: 1.10 $ $Date: 2001/07/22 20:25:07 $
  + * @version $Revision: 1.11 $ $Date: 2001/08/08 19:26:07 $
    */
   
   final class HttpResponseImpl
  @@ -139,8 +139,20 @@
       }
   
   
  -    // --------------------------------------------------------- Public Methods
  +    // ------------------------------------------------------ Protected Methods
   
  +    /**
  +     * Return the HTTP protocol version implemented by this response
  +     * object.
  +     *
  +     * @return The &quot;HTTP/1.1&quot; string.
  +     */
  +    protected String getProtocol() {
  +        return("HTTP/1.1");
  +    }
  +
  +
  +    // --------------------------------------------------------- Public Methods
   
       /**
        * Release all object references, and initialize instance variables, in
  
  
  
  1.3       +17 -5     
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http10/HttpResponseImpl.java
  
  Index: HttpResponseImpl.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http10/HttpResponseImpl.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- HttpResponseImpl.java     2001/07/22 20:25:07     1.2
  +++ HttpResponseImpl.java     2001/08/08 19:26:07     1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http10/HttpResponseImpl.java,v
 1.2 2001/07/22 20:25:07 pier Exp $
  - * $Revision: 1.2 $
  - * $Date: 2001/07/22 20:25:07 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http10/HttpResponseImpl.java,v
 1.3 2001/08/08 19:26:07 pier Exp $
  + * $Revision: 1.3 $
  + * $Date: 2001/08/08 19:26:07 $
    *
    * ====================================================================
    *
  @@ -72,7 +72,7 @@
    * Implementation of <b>HttpResponse</b> specific to the HTTP connector.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.2 $ $Date: 2001/07/22 20:25:07 $
  + * @version $Revision: 1.3 $ $Date: 2001/08/08 19:26:07 $
    */
   
   final class HttpResponseImpl
  @@ -104,8 +104,20 @@
       }
   
   
  -    // --------------------------------------------------------- Public Methods
  +    // ------------------------------------------------------ Protected Methods
   
  +    /**
  +     * Return the HTTP protocol version implemented by this response
  +     * object.
  +     *
  +     * @return The &quot;HTTP/1.0&quot; string.
  +     */
  +    protected String getProtocol() {
  +        return("HTTP/1.0");
  +    }
  +
  +
  +    // --------------------------------------------------------- Public Methods
   
       /**
        * Release all object references, and initialize instance variables, in
  
  
  

Reply via email to