Commit beb8c490 authored by maximesinclair's avatar maximesinclair
Browse files

[BUGFIX] Text/plain outputs always in unicode

parent 7d7aa411
......@@ -44,7 +44,7 @@ public class AsciiServlet extends UmlDiagramService {
@Override
public FileFormat getOutputFormat() {
return FileFormat.ATXT;
return FileFormat.UTXT;
}
}
......@@ -24,11 +24,11 @@
package net.sourceforge.plantuml.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import net.sourceforge.plantuml.FileFormat;
......@@ -49,7 +49,7 @@ class DiagramResponse {
Map<FileFormat, String> map = new HashMap<FileFormat, String>();
map.put(FileFormat.PNG, "image/png");
map.put(FileFormat.SVG, "image/svg+xml");
map.put(FileFormat.ATXT, "text/plain;charset=ISO-8859-1");
map.put(FileFormat.UTXT, "text/plain;charset=UTF-8");
contentType = Collections.unmodifiableMap(map);
}
......@@ -76,7 +76,7 @@ class DiagramResponse {
SourceStringReader reader = new SourceStringReader(uml);
String map = reader.generateImage(new NullOutputStream(), new FileFormatOption(FileFormat.PNG));
String[] mapLines = map.split("[\\r\\n]");
ServletOutputStream httpOut = response.getOutputStream();
PrintWriter httpOut = response.getWriter();
for (int i=2; (i+1)<mapLines.length; i++) {
httpOut.print(mapLines[i]);
}
......
......@@ -68,7 +68,7 @@ public class MapServlet extends HttpServlet {
}
public FileFormat getOutputFormat() {
return FileFormat.ATXT;
return FileFormat.UTXT;
}
}
......@@ -14,6 +14,7 @@ public class AllTests extends TestSuite {
suite.addTestSuite(TestSVG.class);
suite.addTestSuite(TestProxy.class);
suite.addTestSuite(TestMap.class);
suite.addTestSuite(TestCharset.class);
// $JUnit-END$
return suite;
}
......
......@@ -17,6 +17,7 @@ public class TestAsciiArt extends WebappTestCase {
// Analyze response
// Verifies the Content-Type header
assertEquals("Response content type is not TEXT PLAIN", "text/plain", response.getContentType());
assertEquals("Response character set is not UTF-8", "UTF-8", response.getCharacterSet());
// Get the content and verify its size
String diagram = response.getText();
int diagramLen = diagram.length();
......
......@@ -19,7 +19,7 @@ public class TestMap extends WebappTestCase {
// Analyze response
// Verifies the Content-Type header
assertEquals("Response content type is not TEXT PLAIN", "text/plain", response.getContentType());
assertEquals("Response character set is not ISO-8859-1", "ISO-8859-1", response.getCharacterSet());
assertEquals("Response character set is not UTF-8", "UTF-8", response.getCharacterSet());
// Get the content, check its first characters and verify its size
String diagram = response.getText();
assertTrue("Response content is not starting with <area", diagram.startsWith("<area"));
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment