0 0

struts 使用Transforme,StreamResult 返回信息5

需要结果:ajax中使用XMLHttpRequest得到返回xml类型文件
目前使用方法:
服务器端代码: Document doc = null;
Element root = null;
DocumentBuilderFactory factory = null;
DocumentBuilder builder = null;
//以下为确定输出类型,定义输出变量
response.setContentType("xml");
//PrintWriter out=response.getWriter();
//初始化各DocumentBuilderFactory变量
try {
factory = DocumentBuilderFactory.newInstance();
builder = factory.newDocumentBuilder();
doc = builder.newDocument();
root = doc.createElement("root");

Element city = doc.createElement("city");
city.appendChild(doc.createTextNode("北京"));
root.appendChild(city);

city = doc.createElement("city");
city.appendChild(doc.createTextNode("上海"));
root.appendChild(city);

doc.appendChild(root);

TransformerFactory tf = TransformerFactory.newInstance();
Transformer t = tf.newTransformer();
DOMSource dom = new DOMSource(doc);
StreamResult sr = new StreamResult(response.getOutputStream());
t.transform(dom, sr);

客户端:
function processRequest() {
if (httpRequest.readyState == 4) {
if (httpRequest.status == 200) {
alert("httpRequest.status : " + httpRequest.status)
xmlDom = httpRequest.responseXML;//httpRequest.responseText
alert(xmlDom);}
}


问题:返回的总是text类型,不解析为xml,所以不能进行DOM的相关操作。请问怎么修改 ?
2008年6月08日 18:19

1个答案 按时间排序 按投票排序

0 0

response.setContentType("text/xml;charset=gB18030");

2008年6月17日 17:18

相关推荐

Global site tag (gtag.js) - Google Analytics