Hi Rainer,

I have look at AccessLogValve to support 64 bit contentLength output, but the complete servlet API based on int data type:

API 2.4/ 2.5

ServletRequest
  public int getContentLength();

ServletResponse
  public void setContentLength(int len);
  public void setBufferSize(int size);

HttpServletRequest
   public int getIntHeader(String name);

HTTPServletResponse
    public void setIntHeader(String name, int value);
    public void addIntHeader(String name, int value);

Bad news!

Peter




Am 21.06.2007 um 10:14 schrieb Rainer Jung:

It works.

Tested with slightly more than 4 GB. Tomcat now correctly returns the content length header, and mod_jk passes it to the client.

Access logging behaves the same as before (broken for Apache 1.3 and 2.0 and Tomcat as well).

Thanks!

[EMAIL PROTECTED] wrote:
Author: billbarker
Date: Wed Jun 20 19:21:36 2007
New Revision: 549328
URL: http://svn.apache.org/viewvc?view=rev&rev=549328
Log:
Allow for large-file support on downloads as well as uploads.
Reported By: Rainer Jung
Modified:
tomcat/connectors/trunk/jk/java/org/apache/coyote/ajp/ AjpAprProcessor.java tomcat/connectors/trunk/jk/java/org/apache/jk/common/ JkInputStream.java Modified: tomcat/connectors/trunk/jk/java/org/apache/coyote/ajp/ AjpAprProcessor.java URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/java/ org/apache/coyote/ajp/AjpAprProcessor.java? view=diff&rev=549328&r1=549327&r2=549328 ===================================================================== ========= --- tomcat/connectors/trunk/jk/java/org/apache/coyote/ajp/ AjpAprProcessor.java (original) +++ tomcat/connectors/trunk/jk/java/org/apache/coyote/ajp/ AjpAprProcessor.java Wed Jun 20 19:21:36 2007
@@ -961,9 +961,9 @@
         if (contentLanguage != null) {
headers.setValue("Content-Language").setString (contentLanguage);
         }
-        int contentLength = response.getContentLength();
+        long contentLength = response.getContentLengthLong();
         if (contentLength >= 0) {
- headers.setValue("Content-Length").setInt (contentLength); + headers.setValue("Content-Length").setLong (contentLength);
         }
          // Other headers
Modified: tomcat/connectors/trunk/jk/java/org/apache/jk/common/ JkInputStream.java URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/java/ org/apache/jk/common/JkInputStream.java? view=diff&rev=549328&r1=549327&r2=549328 ===================================================================== ========= --- tomcat/connectors/trunk/jk/java/org/apache/jk/common/ JkInputStream.java (original) +++ tomcat/connectors/trunk/jk/java/org/apache/jk/common/ JkInputStream.java Wed Jun 20 19:21:36 2007
@@ -300,9 +300,9 @@
         if( contentLanguage != null ) {
headers.setValue("Content-Language").setString (contentLanguage);
         }
-        int contentLength = res.getContentLength();
+        long contentLength = res.getContentLengthLong();
         if( contentLength >= 0 ) {
- headers.setValue("Content-Length").setInt (contentLength); + headers.setValue("Content-Length").setLong (contentLength);
         }
         int numHeaders = headers.size();
         outputMsg.appendInt(numHeaders);

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




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

Reply via email to