版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34379916/article/details/78400480
最近公司有个项目需要和别的系统做对接,对方开放的是webservice接口,搞了很久终于搞出来了,在此记录一下
获取数据的service
public class SoapService implements ISoapService {
private static final String NAMESPACE = "http://tempuri.org/";
private static final String METHODNAME = "GetOrder";
private static final String URL = "http://192.168.2.22/JTE.Server/ThirdpartyService";
private static final String SOAPACTION = "http://tempuri.org/IThirdpartyService/GetOrder";
private String name;
public SoapService(String _name) {
this.name = _name;
}
public SoapObject HelloWorldResult() {
SoapObject result = null;
SoapObject soapObject = new SoapObject(NAMESPACE, METHODNAME);
soapObject.addProperty("message", "<?xml version=\"1.0\" encoding=\"UTF-8\"?><Body><SUVERL><orderno></orderno><hotel_code>HOTEL1477637967</hotel_code><name></name><cred_no></cred_no><room_no>1005</room_no></SUVERL></Body>");
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.bodyOut = soapObject;
envelope.dotNet = true;
envelope.setOutputSoapObject(soapObject);
HttpTransportSE transportSE = new HttpTransportSE(URL);
transportSE.debug = true;
try {
transportSE.call(SOAPACTION, envelope);
result = (SoapObject) envelope.bodyIn;
} catch (Exception e) {
String exceptionString = e.toString();
}
return result;
}
}
接口
public interface ISoapService {
SoapObject HelloWorldResult();
}
获取数据代码
SoapService soapService = new SoapService("<?xml version=\"1.0\" encoding=\"UTF-8\"?><Body><SUVERL><orderno></orderno><hotel_code>HOTEL1477637967</hotel_code><name></name><cred_no></cred_no><room_no>" + Tools.ROOM_NUMBER + "</room_no></SUVERL></Body>"); SoapObject soapObject = soapService.HelloWorldResult(); String result = soapObject == null ? "网络连接失败!" : soapObject.getProperty(0).toString();