游泳

Java SE6新特性- XML API 与Web服务6

2019-12-02 17:51:57来源:励志吧0次阅读

为 Web 服务的客户端产生存根文件:  wsimport -p sample -keep http://localhost:8080/hello?wsdl

这将会在 sample 目录下产生如 图 8 所示的文件。这一步实际是根据上面 URL 指向的 WSDL 文件,通过 JAXB 技术,生成了相应的 Java 对象。

图 8. wsimport 产生的文件

开发,编译,运行 Web 服务客户程序。清单 10 给出了使用 Hello 服务的客户程序。

清单 10. 使用 Hello 服务的客户程序

package sample;

class HelloApp {

public static void main(String args[]) {

HelloService service = new HelloService();

Hello helloProxy = service.getHelloPort();

String hello = helloProxy.hello("developer works");

System.out.println(hello);

}

}

图 9 是编译并运行该客户程序产生的结果:

图 9. 调用 Hello 服务

可以说在 Java SE 6 SDK 中,Web 服务的开发过程被大大简化了。原来开发中需要手工重复劳动产生的文件,可以使用工具自动生成。比如 WSDL 文件可以自动生成,和 WSDL 绑定的 Java 对象也自动生成,部署(本文仅指 JDK 提供的轻量 HTTP server 部署环境)也大大简化。这些全部归功于 JDK 6 中引入的一些新的 JSR 实现,即一些 API 和工具。表 2 给出了 JDK6 中为 Web 服务 API 提供支持的包。

表 2. JDK 中提供 Web 服务 API 支持的包

JSRPackage

JSR 224

Java API for XML-Based Web Services 2.0javax.xml.ws

javax.xml.ws.handler

javax.xml.ws.handler.soap

javax.xml.ws.http

javax.xml.ws.soap

javax.xml.ws.spi

JSR 222

Java Architecture for XML Binding (JAXB) 2.0javax.xml.bind

javax.xml.bind.annotation

javax.xml.bind.annotation.adapters

javax.xml.bind.attachment

javax.xml.bind.helpers

javax.xml.bind.util

JSR 181

Web Services Metadata for the Java Platformjavax.jws

javax.jws.soap

除此之外 JDK 6 还提供了一些工具,包括 wsgen, wsimport 以及 Java 调用的轻量级 HTTP server。API 和工具联合提供了一个简单的 Web services IDE 开发环境,可以简化 Web 服务应用的开发。

贵阳最好的专治癫痫病医院
汉中治疗包皮包茎方法
汕头哪家医院治疗包皮过长效果好
大庆龙南医院
中科医院魏崃
分享到: