栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

java soap xml解析

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java soap xml解析

package com.lmd.servlet;

import java.io.InputStream;

import org.dom4j.Document;

import org.dom4j.DocumentException;

import org.dom4j.DocumentHelper;

import org.dom4j.Element;

import org.dom4j.VisitorSupport;

import org.dom4j.io.SAXReader;

public class ReceSoap extends VisitorSupport {

String op = "";

Document doc1 = null;

@Override

public void visit(Element node) {

Document doc = null;

if (op.equals(node.getName())) {

try {

doc = DocumentHelper.parseText(node.getText());// str to xml

} catch (DocumentException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

// 在这里返回xml

this.doc1 = doc;

}

}

public static void main(String[] args) throws DocumentException {//测试

SAXReader reader = new SAXReader();

Document doc = reader.read("WebRoot/App/test3.xml");

//System.out.println(doc.asXML());

ReceSoap t = new ReceSoap();

t.op = "StrXml";

//System.out.println("doc1:" + t.doc1);

doc.accept(t);

if(t.doc1 != null)

System.out.println("reslut::"+doc.asXML());

else

System.out.println("reslut:: NULL");

//System.out.println("doc1:" + t.doc1.asXML());

}

public static Document openXmlDocument(InputStream in) {

Document resDoc = null;

SAXReader reader = new SAXReader();

try {

return reader.read(in);

} catch (DocumentException e) {

e.printStackTrace();

}

return resDoc;

}

}

SendSoap .java:

package com.lmd.servlet;

import java.io.InputStream;

import java.io.OutputStream;

import java.io.OutputStreamWriter;

import java.net.URL;

import java.net.URLConnection;

import org.dom4j.Document;

import org.dom4j.DocumentException;

import org.dom4j.io.SAXReader;

public class SendSoap {

public Document send(String url1, String SOAPAction, String soap) {

// TODO Auto-generated method stub

Document reqDoc = null;

try {

URL url = new URL(url1);

URLConnection conn = url.openConnection();

conn.setUseCaches(false);

conn.setDoInput(true);

conn.setDoOutput(true);

// conn.setRequestProperty("Content-Length",

// Integer.toString(soap.length()));

conn.setRequestProperty("Content-Type", "text/xml; charset=utf-8");

conn.setRequestProperty("SOAPAction", SOAPAction);

OutputStream os = conn.getOutputStream();

OutputStreamWriter osw = new OutputStreamWriter(os, "utf-8");

osw.write(soap);

osw.flush();

osw.close();

InputStream is = conn.getInputStream();

reqDoc = openXmlDocument(is);

} catch (Exception e) {

e.printStackTrace();

return reqDoc;

}

return reqDoc;

}

public static Document openXmlDocument(InputStream in) {

Document resDoc = null;

SAXReader reader = new SAXReader();

try {

return reader.read(in);

} catch (DocumentException e) {

e.printStackTrace();

}

return resDoc;

}

}

使用方法:

SendSoap soap = new SendSoap();

String soapAction="http://tempuri.org/scgjGetOutAcceptDealInfo";

Document soapResDoc = soap.send(url,soapAction,soapxml);// 得到返回的soap xml

ReceSoap t = new ReceSoap();

t.op = "StrXml";

soapResDoc.accept(t);

soapResDoc = t.doc1; // 得到解析soap中的result xml

0

顶

1

踩

分享到:

2011-11-18 17:56

浏览 16901

评论

1 楼

yanliyun

2013-12-13

你好,这各方法参数能跟我说明下吗?

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/985254.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号