使用eclipse调用天气预报的测试代码WSDL

1. 下载axis_src_1.4.zip文件

下载地址: http://apache.etoak.com//ws/axis/1_4/

解压之后就找到Lib包, 路径如下: axis-1_4\webapps\axis\WEB-INF\lib

就是需要这个下面的包

2. 下载一个eclipse的工具

地址如下: http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/helios/SR1/eclipse-jee-helios-SR1-win32.zip

这个工具解压之后就可以使用, 而且里面还带有WebService的生成代码工具。



3. 找到weather的WSDL文件

地址如下: http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl

在IE浏览器中打开, 然后另存为XXX.wsdl的文件



4. 在eclipse中新建一个java project的项目, 将wsdl的文件放到src下面; 并且加入前面解压axis的jar包

其中文件列表如下:

activation.jar;

axis.jar;

ais-ant.jar;

commons-discovery-0.2.jar;

commons-logging-1.0.4.jar;

jaxrpc.jar;

mail.jar

saaj.jar

wsdl4j-1.5.1.jar

5. 使用eclipse的生成客户端的工具生成代码

选中wsdl的文件, 然后右键 -> web service -> Generate Client

配置一下就可以了产生代码了。



6. 调用测试, 代码如下:

import javax.xml.rpc.ServiceException;
import cn.com.WebXml.*;

public class TestWs {
public static void main(String[] args) throws ServiceException, RemoteException {
WeatherWebServiceLocator locator = new WeatherWebServiceLocator();
WeatherWebServiceSoapStub service = (WeatherWebServiceSoapStub) locator
.getPort(WeatherWebServiceSoapStub.class);
String[] str = service.getSupportProvince();
for(int i = 0; i< str.length; i++){
System.out.println(str[i].toString());
}
System.out.println("OKOOOOOOOOOOOOOOOOOOOOO");
String[] str_city = service.getSupportCity("江苏");
for(int i = 0; i< str_city.length; i++){
System.out.println(str_city[i].toString());
}
}
}

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