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