svn commit: r712177 - /xml/xindice/trunk/java/src/org/apache/xindice/webadmin/webdav/DAVResponse.java

[email protected]
Newsgroups gmane.text.xml.xindice.devel
Message-ID <[email protected]>
Author: vgritsenko
Date: Fri Nov  7 08:02:03 2008
New Revision: 712177

URL: http://svn.apache.org/viewvc?rev=712177&view=rev
Log:
Send multistatus DAV response in utf-8

Modified:
    xml/xindice/trunk/java/src/org/apache/xindice/webadmin/webdav/DAVResponse.java

Modified: xml/xindice/trunk/java/src/org/apache/xindice/webadmin/webdav/DAVResponse.java
URL: http://svn.apache.org/viewvc/xml/xindice/trunk/java/src/org/apache/xindice/webadmin/webdav/DAVResponse.java?rev=712177&r1=712176&r2=712177&view=diff
==============================================================================
--- xml/xindice/trunk/java/src/org/apache/xindice/webadmin/webdav/DAVResponse.java (original)
+++ xml/xindice/trunk/java/src/org/apache/xindice/webadmin/webdav/DAVResponse.java Fri Nov  7 08:02:03 2008
@@ -17,13 +17,16 @@
 
 package org.apache.xindice.webadmin.webdav;
 
-import org.apache.xindice.webadmin.PartialResponse;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.apache.xindice.webadmin.PartialResponse;
 
-import javax.servlet.http.HttpServletResponse;
 import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServletResponse;
+
 import java.io.IOException;
+import java.io.Writer;
+import java.io.OutputStreamWriter;
 
 /**
  * This is a wrapper class that provides additional DAV-specific functionality
@@ -33,13 +36,13 @@
 public class DAVResponse {
     public static final String DAV_NS = "DAV:";
 
-    protected final ServletOutputStream out;
+    private static final Log log = LogFactory.getLog(DAVResponse.class);
 
-    private boolean isMultistatus;
     private final HttpServletResponse response;
-    private String protocol;
 
-    private static final Log log = LogFactory.getLog(DAVResponse.class);
+    protected final Writer out;
+    private boolean isMultistatus;
+    private String protocol;
 
     /**
      * Creates new instance of DAVRequest.
@@ -49,7 +52,7 @@
      */
     public DAVResponse(HttpServletResponse response) throws IOException {
         this.response = response;
-        this.out = response.getOutputStream();
+        this.out = new OutputStreamWriter(response.getOutputStream(), "utf-8");
     }
 
     /**
@@ -65,12 +68,12 @@
                 log.debug("Sending response for HREF " + res.getHref());
             }
             response.setStatus(WebdavStatus.SC_MULTI_STATUS);
-            out.println("<?xml version='1.0' encoding='utf-8' ?>");
-            out.println("<multistatus xmlns='DAV:'>");
+            out.write("<?xml version='1.0' encoding='utf-8'?>");
+            out.write("<multistatus xmlns='DAV:'>");
             isMultistatus = true;
         }
 
-        out.println(res.toString());
+        out.write(res.toString());
     }
 
     /**
@@ -82,7 +85,8 @@
      */
     public void closeMultistatusResponse() throws IOException {
         if (isMultistatus) {
-            out.println("</multistatus>");
+            out.write("</multistatus>");
+            out.flush();
         }
     }
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.