import java.io.IOException;
import java.net.SocketTimeoutException;
import java.util.ArrayList;
import java.util.List;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import org.xmlpull.v1.XmlPullParserException;
public class Test {
// 命名空间
private static final String NAMESPACE = "http://WebXml.com.cn/";
// WebService地址
private static final String URL = "http://webservice.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl";
// 需要调用的方法名
private static final String getSupportProvince = "getSupportProvince";
/**
* @desc 获得洲、国内外省份和城市信息
* @return 省份列表
* @throws SocketTimeoutException
*/
public static List<String> getAllProvince() throws SocketTimeoutException {
List<String> allProvince = new ArrayList<String>();
try {
// 1.实例化SoapObject对象
SoapObject request = new SoapObject(NAMESPACE, getSupportProvince);
// 2.如果方法需要参数,设置参数
// request.setProperty("参数名称", "参数值");
// 3.设置Soap的请求信息,参数部分为Soap协议的版本号
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.bodyOut = request;
// 4.构建传输对象
HttpTransportSE transport = new HttpTransportSE(URL);
// 5.设置链接超时,1毫秒测试
transport.setConnectionTimeOut(1);
transport.debug = true;
// 6.访问WebService,第一个参数为命名空间 + 方法名,第二个参数为Envelope对象
transport.call(NAMESPACE + getSupportProvince, envelope);
// 7.解析返回的数据
SoapObject result = (SoapObject) envelope.getResponse();
int count = result.getPropertyCount();
for (int i = 0; i < count; i++) {
allProvince.add(result.getProperty(i).toString());
}
} catch (IOException e) {
if (e instanceof SocketTimeoutException)
;
throw new SocketTimeoutException();
} catch (XmlPullParserException e) {
e.printStackTrace();
}
return allProvince;
}
public static void main(String[] args) {
List<String> p;
try {
p = getAllProvince();
for (String d : p) {
System.out.println(d);
}
} catch (SocketTimeoutException e) {
// TODO Auto-generated catch block
System.out.println("请求超时,请稍后再试");
}
}
}
带有请求超时设置的soap jar包
4星 · 超过85%的资源 需积分: 10 26 浏览量
2012-04-05
10:27:32
上传
评论
收藏 127KB RAR 举报
沉晔
- 粉丝: 8
- 资源: 7
最新资源
- 2%EF%BC%9A%E9%99%95%E8%A5%BF%E
- yyspdz62_944.apk
- SAP公司间采购EDI配置-如何触发自动MIRO.docx
- python197基于图像识别的仪表实时监控系统.rar
- python196基于循环神经网络的情感分类系统.rar
- I2C驱动SHT30温湿度传感器和LCD12864使用例程(RSCG12864B)
- python193中学地理-中国的江河湖泊教学网(django).rar
- python191基于时间序列分析的大气污染预测软件(django).rar
- python190基于人脸识别智能化小区门禁管理系统.rar
- python189某医院体检挂号系统.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
- 1
- 2
前往页