Author: jcompagner
Date: Sat Mar  8 13:34:38 2008
New Revision: 635091

URL: http://svn.apache.org/viewvc?rev=635091&view=rev
Log:
fix for WICKET-1388 only append the charset to the content type of the content 
type is a text type (application/pdf shouldn't do that)

Modified:
    wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Response.java
    
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java

Modified: 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Response.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Response.java?rev=635091&r1=635090&r2=635091&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Response.java 
(original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Response.java 
Sat Mar  8 13:34:38 2008
@@ -258,22 +258,21 @@
                        {
                                String message = throwable.getMessage();
                                ignoreException = message != null &&
-                                               (message.indexOf("Connection 
reset") != -1 ||
-                                                               
message.indexOf("Broken pipe") != -1 ||
-                                                               
message.indexOf("Socket closed") != -1 || message
-                                                               
.indexOf("connection abort") != -1);
+                                       (message.indexOf("Connection reset") != 
-1 ||
+                                               message.indexOf("Broken pipe") 
!= -1 ||
+                                               message.indexOf("Socket 
closed") != -1 || message.indexOf("connection abort") != -1);
                        }
                        else
                        {
                                ignoreException = 
throwable.getClass().getName().indexOf("ClientAbortException") >= 0 ||
-                                               
throwable.getClass().getName().indexOf("EofException") >= 0;
+                                       
throwable.getClass().getName().indexOf("EofException") >= 0;
                        }
                        if (ignoreException)
                        {
                                if (log.isDebugEnabled())
                                {
                                        log.debug("Socket exception ignored for 
sending Resource "
-                                                       + "response to client 
(ClientAbort)", e);
+                                               + "response to client 
(ClientAbort)", e);
                                }
                                break;
                        }
@@ -351,8 +350,7 @@
        public void detectContentType(RequestCycle requestCycle, String uri)
        {
                // Configure response with content type of resource
-               final ServletContext context = 
((WebApplication)requestCycle.getApplication())
-                               .getServletContext();
+               final ServletContext context = 
((WebApplication)requestCycle.getApplication()).getServletContext();
                // First look for user defined content-type in web.xml
                String contentType = context.getMimeType(uri);
 
@@ -366,7 +364,15 @@
 
                if (contentType != null)
                {
-                       setContentType(contentType + "; charset=" + 
getCharacterEncoding());
+                       // only set the charset when the contentType is the 
text type
+                       if (contentType.toLowerCase().indexOf("text") != -1)
+                       {
+                               setContentType(contentType + "; charset=" + 
getCharacterEncoding());
+                       }
+                       else
+                       {
+                               setContentType(contentType);
+                       }
                }
        }
 }

Modified: 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java?rev=635091&r1=635090&r2=635091&view=diff
==============================================================================
--- 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java
 (original)
+++ 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java
 Sat Mar  8 13:34:38 2008
@@ -189,7 +189,16 @@
                String responseType = resourceStream.getContentType();
                if (responseType != null)
                {
-                       response.setContentType(responseType + "; charset=" + 
response.getCharacterEncoding());
+                       if (responseType.toLowerCase().indexOf("text") != -1)
+                       {
+                               response.setContentType(responseType + "; 
charset=" +
+                                       response.getCharacterEncoding());
+                       }
+                       else
+                       {
+                               response.setContentType(responseType);
+                       }
+
                }
                else
                {


Reply via email to