android 调用webservice出错

来源:互联网 发布:linux 重启后挂载失败 编辑:程序博客网 时间:2024/04/26 18:08

引用第三方ksoap2的jar包

 SoapObject rpc = new SoapObject(nameSpace, method); // 设置需调用WebService接口需要传入的两个参数mobileCode、userId//        rpc.addProperty("loginName", name);//        rpc.addProperty("loginPsw", "62c8ad0a15d9d1ca38d5dee762a16e01");LoginRequestData requestData = new LoginRequestData();requestData.setLoginName(name);requestData.setLoginPsw(pwdMD5);rpc.addProperty("arg0", requestData);//PropertyInfo objekt = new PropertyInfo();//objekt.setName("arg0");//objekt.setValue(requestData);//objekt.setType(requestData.getClass());//rpc.addProperty(objekt);// 生成调用WebService方法的SOAP请求信息,并指定SOAP的版本SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);envelope.bodyOut = rpc;// 设置是否调用的是dotNet开发的WebServiceenvelope.dotNet = false;// 等价于envelope.bodyOut = rpc;envelope.setOutputSoapObject(rpc);HttpTransportSE transport = new HttpTransportSE("http://" + application.getIp() +                        "/business/CXF/business" + "?wsdl"); transport.debug = true; // 调用WebServiced  // 获取返回的数据//            SoapObject object = (SoapObject) envelope.bodyIn;SoapObject object = (SoapObject) envelope.getResponse();//            result = object.getProperty(0).toString();// 获取返回的结果String result = envelope.getResponse().toString();

尤其要注意如果后台是.net envelope.dotNet = true; 这句一定要设置成true ,java或其他平台要设置成false否则会出下面的错误

SoapFault - faultcode: ‘soap:Server’ faultstring: ‘Fault occurred while processing.’ faultactor: ‘null’ detail: null

0 0
原创粉丝点击