WebService利用KSoap2调用接口

[img]http://dl.iteye.com/topics/download/cf170312-03f0-35f0-9e77-6b46c43a60c7[/img]

[b]Android端例子:[/b]
[b]首先先设置AndroidManifest.xml赋予访问网络权限[/b]
<uses-permission android:name="android.permission.INTERNET"></uses-permission>


主Activity内容:
package com.cn;

import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;

import android.app.Activity;
import android.os.Bundle;
import android.widget.Toast;

public class WebserviceActivity extends Activity {
//WebService中的命名空间
private static final String NAMESPACE = "http://test";
//WebService地址
private static String URL = "http://192.168.1.2:8080/accessWebService/services/WebServiceTest?wsdl";
//需要调用的方法
private static final String METHOD_NAME = "sayHello";
//可以为null, 或者URL+方法名 (http://192.168.1.2:8080/accessWebService/services/sayHello)
private static String SOAP_ACTION = null;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

try {
SoapObject rpc = new SoapObject(NAMESPACE, METHOD_NAME);
//传方法参数
rpc.addProperty("theCityName", "上海");
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.bodyOut = rpc;
envelope.dotNet = true;
envelope.setOutputSoapObject(rpc);
HttpTransportSE ht = new HttpTransportSE(URL);
//AndroidHttpTransport ht = new AndroidHttpTransport(URL);
ht.debug = true;

ht.call(SOAP_ACTION, envelope);
//ht.call(null, envelope);

//SoapObject result = (SoapObject)envelope.bodyIn;
//detail = (SoapObject) result.getProperty("getWeatherbyCityNameResult");

SoapObject detail =(SoapObject) envelope.bodyIn;
Toast.makeText(this, detail.toString(), Toast.LENGTH_LONG).show();

return;
} catch (Exception e) {
e.printStackTrace();
}
}
}



服务端调用的Java类, 如何部署WebService请参照博客

package test;

public class WebServiceTest {
public String sayHello(String name){
return "Hello,"+name;
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值