第二章 控制架构和类型的命名空间

54 阅读1分钟

第二章 控制架构和类型的命名空间

本主题介绍如何控制 Web 服务的 WSDL 模式的命名空间,以及其中定义的任何类型的命名空间。

控制架构的命名空间

TYPENAMESPACE 参数( Web 服务的)控制 Web 服务模式的目标命名空间。

如果 TYPENAMESPACE 为空,则架构位于 Web 服务的 NAMESPACE 参数指定的命名空间中。WSDL 可能如下所示:

<?xml version='1.0' encoding='UTF-8' ?>
...
<types>
<s:schema elementFormDefault='qualified' 
targetNamespace = 'http://www.myapp.org'>
...

如果将 TYPENAMESPACE 设置为 URI,则该 URI 将用作类型的命名空间。在这种情况下,WSDL 可能如下所示:

<?xml version='1.0' encoding='UTF-8' ?>
...
<types>
<s:schema elementFormDefault='qualified' 
targetNamespace = 'http://www.mytypes.org'>
...

控制类型的命名空间

对于架构中引用的任何类型,以下规则控制如何将它们分配给命名空间:

  • 如果 Web 服务的 USECLASSNAMESPACES 参数为 0(默认值),则类型与模式位于同一命名空间中;请参阅上一节。
  • 如果 Web 服务的 USECLASSNAMESPACES 参数为 1(并且 Web 服务使用文档绑定样式),则每种类型都位于相应类型类的 NAMESPACE 参数给出的命名空间中。

包括类型文档

默认情况下, Web 服务的 WSDL 不包含 Web 服务所使用的类型的文档。

要在 WSDL 架构中的 <annotation> 元素内包含类型的类文档,请将 Web 服务的 INCLUDEDOCUMENTATION 参数指定为 1

此参数不会导致 WSDL 包含 Web 服务及其 Web 方法的注释;没有选项可以自动在 WSDL 中包含这些注释。