通过 WSDL 文件创建 Web 服务
另请参见
如果您和业务合作伙伴达成了用 WSDL 文件形式表示的“约定”,则可以使用 IDE 来实现它。WSDL 文件是有关如何交换数据和消息以及如何发送和接收这些消息的一种协议。在 IDE 中,可以使用 WSDL 文件来实现 Web 服务。
业务需求可能要求您创建作为一组 XML 架构文件和 WSDL 文件的独立于平台的 Web 服务描述。基于此独立于平台的描述,您可以使用以下步骤来生成实现文件。可以通过磁盘或 URL 来获取以下步骤中使用的 WSDL 文件。甚至可以使用 IDE 自行创建 WSDL 文件,如创建 WSDL 文件所述。
-
对于 J2EE 1.4 Web 服务,如果 WSDL 文件从本地文件系统中导入结构和/或其他 WSDL 文件,只有事先将导入的结构和 WSDL 文件复制到 WEB-INF/wsdl(或 META-INF/wsdl)文件夹中,Web 服务才能正常使用。如果您未执行此操作,则在以下操作过程结束时,Web 服务编译器仍无法找到这些导入的文件。
通过 WSDL 文件创建 Web 服务:
- 根据实现方式,请执行以下某项操作:
- 在“项目”窗口或“文件”窗口中右键单击项目节点,然后选择“新建”>“文件/文件夹”。在“Web 服务”文件夹中,选择“来自 WSDL 的 Web 服务”。
将打开“通过 WSDL 新建 Web 服务”向导。
- 键入 Web 服务名称,并为放置 Web 服务指定一个包。
- 在文件系统中,浏览至某个 WSDL 文件。
- 单击“完成”,
对于 JAX-WS Web 服务(Java EE 5 规范),IDE 将运行 wsimport 工具,它将生成以下内容:
- 要使用的 WSDL 文件(由 IDE 创建)。抽象部分是按照原始文件的内容复制的;而具体部分是原始文件的“规格化”体现。有关 WSDL 文件中的抽象和具体定义,请参见关于 WSDL 文件。例如,如果 SOAP 绑定元素在 WSDL 文件中不存在,则会创建该元素。另外,还会创建与绑定兼容的抽象服务元素。
- 一个实现类。在 WSDL 文件中找到的操作将被添加到此类中。
对于 JAX-RPC Web 服务(J2EE 1.4 规范),IDE 将运行 wscompile 工具,它将生成以下内容:
- 一个新 WSDL 文件。抽象部分是按照原始文件的内容复制的;而具体部分是原始文件的“规格化”体现。有关 WSDL 文件中的抽象和具体定义,请参见关于 WSDL 文件。例如,如果 SOAP 绑定元素在 WSDL 文件中不存在,则会创建该元素。另外,还会创建与绑定兼容的服务元素。
- 声明 Web 服务操作的服务端点接口(“接口”)。在 IDE 中,接口类是由 WSDL 中定义的 portType 元素的名称标识的。IDE 会自动使用 WSDL 文件中的每个 Web 服务操作的声明来填充接口。
- 一个实现类。在 WSDL 文件中找到的操作将被添加到此类中。在 IDE 中,JAX-WS 类是由在向导中指定的名称标识的。在 IDE 中,JAX-RPC 实现类是由 WSDL 中定义的 portType 元素的名称以及后缀 "_Impl"(用于 Web 应用程序)或 "_Bean"(用于 EJB 模块)标识的。
缺省情况下,WSDL 文件将放在 WEB-INF/wsdl(或 META-INF/wsdl)文件夹中,而接口和实现类将放在项目的 src 文件夹(在“文件”窗口中)内的包中,可以在“源包”节点中(在“项目”窗口中)访问它们。
- 不能将操作添加到通过 WSDL 文件创建的 Web 服务中。
- 另请参见
- 关于 Web 服务
- 关于实现 Web 服务
- 通过 Java 创建 Web 服务
- 创建 WSDL 文件
法律声明