ksoap2使用

结合我另一篇博客的soapui使用,首先导入ksoap2的jar包

 // 调用 的方法
        String methodName = "这里填入图四的⑤getquertresultbysql";
        // 创建HttpTransportSE传输对象
        HttpTransportSE ht = new HttpTransportSE("这里填入后台给你的接口url");
        try {
            ht.debug = true;
            // 使用SOAP1.1协议创建Envelop对象
            SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
                    SoapEnvelope.VER11);
            // 实例化SoapObject对象
            SoapObject soapObject = new SoapObject("这里传入图四的②",
                    methodName);
                    //这里如果你的请求方法没有参数的话可以忽略
            soapObject.addProperty("这里传入图四的①UserNo", "superadmin");
            soapObject.addProperty("这里传入图四的①pwd", "23422223");
            envelope.bodyOut = soapObject;
            // 设置与.NET提供的webservice保持较好的兼容性
            //envelope.dotNet = true;
            // 调用webservice
            ht.call("这里传入图四的②" + methodName, envelope);
            if (envelope.getResponse() != null) {
                // 获取服务器响应返回的SOAP消息
                SoapObject result = (SoapObject) envelope.bodyIn;
                //return 是返回结果的开放标签这里需要你根据你的返回结果修改 
                Object detail = result.getProperty("return");
                // 解析服务器响应的SOAP消息
                return String.valueOf(detail);
            }
        } catch (SoapFault e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (XmlPullParserException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return null;
    }

注意:如果webService运行在window,那么可以设置与.NET提供的webservice保持较好的兼容性,不然可能会没有数据,或其他异常,如果运行在linux,那么不可以设置与.NET提供的webservice保持较好的兼容性,会报错!

你可能感兴趣的:(Android)