Webservice------第一个入门程序

public interface IWeatherDao {
    public  String weather(String cityName);
}

 

import javax.jws.WebService;
@WebService
public class WeatherImpl implements IWeatherDao {
    @Override
    public String weather(String cityName) {
      if("广州".equals(cityName))
      {
          return cityName+" : 未来三天有雨";
      }else{
          return cityName+" : 未来三天晴";
      }

    }
}

 

public class Weather {
   public static  void main(String[] args){

       Endpoint.publish("http://127.0.0.1:1234/weather",new WeatherImpl());
}
}

 

4.2 wsdl说明书结构

  1. 服务视图,webservice的服务结点,它包括了服务端点
  2. 为每个服务端点定义消息格式和协议细节
  3. 服务端点,描述 web service可被执行的操作方法,以及相关的消息,通过binding指向portType
  4. 定义一个操作(方法)的数据参数(可有多个参数)
  5. 定义 web service 使用的全部数据类型

Webservice------第一个入门程序_第1张图片 

wsdl 说明书阅读方式

从下往上读,先找到服务视图,通过binging找到protType,找到了protType就找到了我们要调用的webservice方法。

4.4 Wsimport命令

  1. wsimportjdk自带的webservice客户端工具,可以根据wsdl文档生成客户端调用代码(java代码).当然,无论服务器端的WebService是用什么语言写的,都可以生成调用webservice的客户端代码,服务端通过客户端代码调用webservice。
  2. wsimport.exe位于JAVA_HOME\bin目录下.
  3. 常用参数为:

-s<目录> - 将生成.java文件。(学习)

-d<目录>  - 将生成.class文件。默认参数。

-p<生成的新包名> -将生成的类,放于指定的包下

(wsdlurl) - http://server:port/service?wsdl,必须的参数。

 

  1. 示例:

C:/> wsimport –s . http://127.0.0.1:1234/weather?wsdl

注意:-s不能分开,-s后面有个小点

 

 

4.5案例:通过Wsimport生成客户端调用类

  1. 在Eclipse中创建一个空的java工程为02.jax_ws_client,此工程作为存放客户端代码。

Webservice------第一个入门程序_第2张图片

 

  1. cmd命令行进入此wsimport 工程的src目录,
  2. 输入以下命令:

wsimport –s . http://127.0.0.1:12345/weather?wsdl

Webservice------第一个入门程序_第3张图片

 

 

:

可以通过java version检查你当前的版本号保证是jdk1.6以上。

Jdk1.6.0_13以后的版本支持jaxws2.1

案例:WebService 客户端编写

在上面的项目代码中

  1. 创建服务窗口
  2. 通过服务对象找到服务端点
  3. 调用webservice的方法

Webservice------第一个入门程序_第4张图片

你可能感兴趣的:(WebService)