『壹』 java调用vb webservice
使用java调用webservice,可以使用Axis(http://ws.apache.org/axis/),调用列车 时刻表服务的代码:
String url="http://www.webxml.com.cn/WebServices/TrainTimeWebService.asmx"; //endpiont
String namespace = "http://WebXml.com.cn/"; //wsdl中的namespace
String methodName = "getStationAndTimeByTrainCode"; //调用哪个方法,这里是 getStationAndTimeByTrainCode,因为返回的 是数组,比较方便,其他都是返回dataSet,需要额外解析
String soapActionURI = "http://WebXml.com.cn/getStationAndTimeByTrainCode"; //wsdl中方法的soapActionURI
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL(url));
call.setUseSOAPAction(true);
call.setSOAPActionURI(soapActionURI);
call.setOperationName(new QName(namespace, methodName));
call.addParameter("TrainCode", XMLType.XSD_STRING, ParameterMode.IN); //设置列车代码参数
call.addParameter("UserID", XMLType.XSD_STRING, ParameterMode.IN); //设置商业用户ID
call.setReturnType(XMLType.XSD_ANYTYPE); //返回值类型,这里为String数组
Object ret = call.invoke(new Object[] { "D32","" }); //这里是调用,参数为D32次列车
System.out.println("返回结果:" + ret); //这里需要根据返回类型不同,做不同处理
-------------------------
配置方面可以参考apache官方网站,自己动手才能掌握更牢
-------------------------
一个wsdl文件就完全可以说明webservice的具体信息了