我的android app中需要发送webservice ,于是我使用了 ksop2 进行发送,在测试过程中不是很顺利,不能正常工作.
我的web service 请求格式如下
?
?
- <Envelope?xmlns="http://schemas.xmlsoap.org/soap/envelope/">??
- ????
- ????<Body>??
- ????
- ????????<UpdateVehicleViaObj?xmlns="http://tempuri.org/">??
- ????
- ????????????<userHash>[string?]</userHash>??
- ????
- ????????????<vehicleObject>??
- ????
- ????????????????<Colour?xmlns="http://schemas.datacontract.org/2004/07/StockService">[string?]</Colour>??
- ????
- ????????????????<Comments?xmlns="http://schemas.datacontract.org/2004/07/StockService">[string?]</Comments>??
- ????
- ????????????????<Condition?xmlns="http://schemas.datacontract.org/2004/07/StockService">[string?]</Condition>??????????????????
- ????
- ????????????</vehicleObject>??
- ????
- ????????</UpdateVehicleViaObj>??
- ????
- ????</Body>??
- </Envelope>??
?
我在android 代码中使用 ksoap2 如下
?
?
- SoapObject?request?=?new?SoapObject("Namespace",?"methodname");??
- ????
- ??request.addProperty(properyObject);??
- ???
- ???
- ???
- ?SoapSerializationEnvelope?envelope?=?new?SoapSerializationEnvelope(SoapEnvelope.VER11);??
- ???
- ???
- ???
- ??????????
- ????
- ????????envelope.dotNet?=?true;??
- ????
- ????????MarshalDouble?md?=?new?MarshalDouble();??
- ????
- ??????????
- ????
- ????????envelope.implicitTypes?=?true;??
- ????
- ????????md.register(envelope);??
- ????
- ??????????
- ????
- ????????envelope.setOutputSoapObject(request);??
- ????
- ????????HttpTransportSE?androidHttpTransport?=?new?HttpTransportSE(mInObj.getUrl(),?networkTimeOut);??
- ???
- ???
- ???
- ????????androidHttpTransport.debug=?true;??
- ????
- ????????androidHttpTransport.call(SoapAction,?envelope,headerPropertyArrayList);??
ksop2 处理请求后变成这样
?
?
?
- <v:Envelope?xmlns:i="http://www.w3.org/2001/XMLSchema-instance"?xmlns:d="http://www.w3.org/2001/XMLSchema"?xmlns:c="http://schemas.xmlsoap.org/soap/encoding/"?xmlns:v="http://schemas.xmlsoap.org/soap/envelope/"><v:Header?/><v:Body><UpdateVehicleViaObj?xmlns="http://tempuri.org/"?id="o0"?c:root="1"><userHash>B5B2FDF87E848946</userHash><vehicleObject><Colour>red</Colour><??
- &??
- <Comments?>red</Comments?><<Condition?>red</Condition?><</vehicleObject></UpdateVehicleViaObj></v:Body></v:Envelope>??
求救:
?
?
原文地址:http://www.itmmd.com/201412/296.html?
该文章由?萌萌的IT人?整理发布,转载须标明出处。