Ksoap2.6.5 调用webService

String namespace = "****"; // 命名空间,即服务器端得接口,注:后缀没加.wsdl,
		String url = "****"; // 对应的webService url
		String methodName = "methodName";
		SoapObject soapObject = new SoapObject(namespace, methodName);
		// soapObject.addProperty("filename", fileName); // 参数1 名
		soapObject.addProperty("file", uploadBuffer); // 参数1 字符串
		soapObject.addProperty("key",value); // 参数		SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
				SoapEnvelope.VER11);
		envelope.dotNet = true;
		envelope.bodyOut = soapObject;
		envelope.encodingStyle = SoapSerializationEnvelope.XSD;
		envelope.setOutputSoapObject(soapObject);
		try {
			HttpTransportSE httpTranstation = new HttpTransportSE(url, 60000);
			httpTranstation.call(namespace + "/" + methodName, envelope);
			Object result = (Object) envelope.getResponse();
			Log.i("====", result.toString());
			if (result.toString().contains("SUCCESS")) {
dosth.			} else {
				dosth.			}
		} catch (IllegalArgumentException e) {
			Log.i("====", "time out");
		} catch (XmlPullParserException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			closeCurrentDialog();
		}


前几天出现个问题,把webservice 换了服务器,但是返回来的字符串就乱码了 到了
Object result = (Object) envelope.getResponse();
出错,上网查了一些资料,说是吧2.6.5的jar换成 2.5.7就可以了,试了一下,果然解决问题。
这个可能是 2.6.5的bug吧,我把2.5.7的jar 也发上来共享下!

你可能感兴趣的:(webservice,ksoap)