WebService服务 第二讲:创建WebService服务(客户端版)

步骤1.创建服务

   1.创建一个接口,queryWeather为服务方法。

package cn.yxl.jaxws.ws;
/**
 * WeBservise服务端 接口
 *
 */
public interface WeatherInterface {

	public String queryWeather(String cityName);
	
}

    2.编写实现类,此类作为webservice提供服务类。

package cn.yxl.jaxws.ws;

import javax.jws.WebService;


/**
 * 创建webService服务
 *
 */
@WebService
public class WeathInterfaceImpl implements WeatherInterface {

	@Override
	public String queryWeather(String cityName) {
		
		System.out.println("from "+cityName);
		String weather="晴";
		return weather;
	}

}

 注意:

SEI实现类中至少要有一个非静态的公开方法需要作为webservice服务方法。

public class 上边要加上@WebService 。

扫描二维码关注公众号,回复: 258210 查看本文章

2.发布服务

package cn.yxl.jaxws.ws;

import javax.xml.ws.Endpoint;

public class WebService {

	public static void main(String[] args) {
		// 发布服务

		// 参数解释
		//参数1:服务地址
		//参数2:服务实现类
		Endpoint.publish("http://127.0.0.1:12345/weather",new WeathInterfaceImpl());

	}

}

注意:启动项目,发布服务。停止项目时,服务也停止。

步骤3:测试服务

Webservice发布成功,通过wsdl查看webservice发布的正确性

测试方法1:通过网页测试

在地址栏输入(注意后面的参数?wsdl)

http://127.0.0.1:1234/weather



 

Wsdl不是webService,只是获取一个用于描述WebService的说明文件。

Wsdl- WebServiceDescriptionLanguage,是以XML文件形式来描述WebService的”说明书”,有了说明书,我们才可以知道如何使用或是调用这个服务.

 

测试方法2:通过客户端程序测试

 

客户端测试是编写客户端程序,然后调用服务接口。

第一步:通过wsimport命令 根据服务地址生成客户端调用的代码。

 

1.首先创建客户端测试项目


 
 2.通过cmd命令。根据服务地址,生成一些java代码,以便测试程序调用。



 

返回到编译器刷新测试项目,会多出一些文件。这些文件是刚才通过wsimport命令生成的调用代码文件。

这些文件可以和WSDL描述文件里的标签进行对应。

第二步:根据WSDL说明书调用WebService服务。



 

 

猜你喜欢

转载自762612388.iteye.com/blog/2356646