Ajax中文问题
我通过这样的代码向客户端返回XML。
response.setContentType("text/xml");
PrintWriter out = new PrintWriter(response.getOutputStream());
System.out.println(xmlutil.transformDOM(doc));
out.println(xmlutil.transformDOM(doc));
out.close();
在控制台打出中文是对的。
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
<RESPONSE>
<IMAGE>
<ENVELOPE minx="51273.9079795552" miny="45059.4999503881" maxx="52106.0918876012" maxy="45559.4999503881"/>
<OUTPUT file="D:\Tomcat 5.0\webapps\suzhou\output\test2_MENGLIKUN744150088.jpg" url="http://menglikun:8181/suzhou/output/test2_MENGLIKUN744150088.jpg"/>
</IMAGE>
<HOTSPOT x="51689.9999335782" y="45309.4999503881" layer="SUZHOU.MENPAIPOINT" objectid="1841" objname="半边街8号">半边街8号</HOTSPOT></RESPONSE>
</ARCXML>
但在客户端用
alert(xmlHttp.responseText);
弹出了这样的结果,跟服务器端明显不一致,是什么原因呢?如何解决?
<?xml version="1.0" encoding="UTF-8"?>
<ARCXML version="1.1">
<RESPONSE>
<IMAGE>
<ENVELOPE minx="51273.9079795552" miny="45059.4999503881" maxx="52106.0918876012" maxy="45559.4999503881"/>
<OUTPUT file="D:\Tomcat 5.0\webapps\suzhou\output\test2_MENGLIKUN744150088.jpg" url="http://menglikun:8181/suzhou/output/test2_MENGLIKUN744150088.jpg"/>
</IMAGE>
<HOTSPOT x="51689.9999335782" y="45309.4999503881" layer="SUZHOU.MENPAIPOINT" objectid="1841" objname=">/HOTSPOT></RESPONSE>
</ARCXML>