1 public void GetHelloWord(){
2 new Thread(new Runnable() {
3 @Override
4 public void run() {
5 String WSDL = "http://192.168.99.126:8066/FileUpload/FileUpload.asmx?wsdl";//WSDL
6 String targetNameSpace = "http://tempuri.org/";//namespace
7 String getSupportProvince = "HelloWorld";//要调用的方法名称
8
9 // 根据命名空间和方法得到SoapObject对象
10 SoapObject soapObject = new SoapObject(targetNameSpace,getSupportProvince);
11
12 // 通过SOAP1.1协议得到envelop对象
13 SoapSerializationEnvelope envelop = new SoapSerializationEnvelope(SoapEnvelope.VER11);
14 // 将soapObject对象设置为envelop对象,传出消息
15 envelop.bodyOut = soapObject;
16 // 设置是否调用的是dotNet开发的WebService //指定webservice的类型的(java,PHP,dotNet)
17 envelop.dotNet = true;
18 // 等价于envelop.bodyOut = soapObject;
19 envelop.setOutputSoapObject(soapObject);
20 HttpTransportSE httpSE = new HttpTransportSE(WSDL);
21 // 开始调用远程方法
22 try {
23 httpSE.call(targetNameSpace + getSupportProvince, envelop);
24 // 得到远程方法返回的SOAP对象
25 SoapObject resultObj = (SoapObject) envelop.bodyIn;
26 // 得到服务器传回的数据
27 int count = resultObj.getPropertyCount();
28 Log.i("----------------TAG", "count="+count+";"+resultObj.getProperty(0).toString());
29 for (int i = 0; i < count; i++) {
30 Map<String,String> listItem = new HashMap<String, String>();
31 listItem.put("province", resultObj.getProperty(i).toString());
32 Log.i("----------------TAG", resultObj.getProperty(i).toString());
33 }
34 } catch (IOException e) {
35 e.printStackTrace();
36 } catch (XmlPullParserException e) {
37 e.printStackTrace();
38 }
39 }
40 }).start();
41 }