29.3. 使用 JAX-WS 目录
概述
JAX-WS 规范要求所有实现都支持:
在解析属于 Web 服务描述的任何 Web 服务文档时,要使用的标准目录功能,特别是 WSDL 和 XML Schema 文档。
此目录工具使用 OASIS 指定的 XML 目录工具。所有采用 WSDL URI 的 JAX-WS API 和注释都使用目录解析 WSDL 文档的位置。
这意味着,您可以提供一个 XML 目录文件,将 WSDL 文档的位置重写为套件特定的部署环境。
编写目录
JAX-WS 目录是 OASIS XML Catalogs 1.1 规范定义的标准 XML 目录。它们允许您指定映射:
- 文档的公共标识符和/或系统标识符到 URI。
- 到另一个 URI 的资源的 URI。
表 29.1 “常见 JAX-WS 目录元素” 列出用于 WSDL 位置解析的一些常见元素。
元素 | 描述 |
---|---|
| 将 URI 映射到备用 URI。 |
| 重写 URI 的开头。例如,这个元素允许您将以 http://cxf.apache.org 开头的所有 URI 映射到以 classpath: 开头的 URI。 |
| 根据原始 URI 的后缀将 URI 映射到备用 URI。例如,您可以将以 foo.xsd 结尾的所有 URI 映射到 classpath:foo.xsd。 |
打包目录
JAX-WS 规范要求用于解析 WSDL 和 XML 架构文档的目录使用名为 META-INF/jax-ws-catalog.xml
的所有可用资源来组装。如果您的应用程序被打包成单个 JAR 或 WAR,您可以将目录放在单个文件中。
如果您的应用打包为多个 JAR,您可以将目录分成多个文件。每个目录文件可以模块化,以仅处理特定 JAR 中的代码访问的 WSDL。