xml - 出现在 Web 服务模式中的 tns

标签 xml web-services wsdl xsd jax-ws

我正在使用 JAX-WS 来运行一些示例 Web 服务。发布 Web 服务后,当我键入 WSDL URL 时,我可以看到 WSDL 文档。 WSDL 文档指的是如下所示的架构文档:

<xs:schema version="1.0" targetNamespace="http://ts.ch01/">
<xs:element name="getTimeAsElapsed" type="tns:getTimeAsElapsed"/>
<xs:element name="getTimeAsElapsedResponse" type="tns:getTimeAsElapsedResponse"/>
<xs:element name="getTimeAsString" type="tns:getTimeAsString"/>
<xs:element name="getTimeAsStringResponse" type="tns:getTimeAsStringResponse"/>
−
<xs:complexType name="getTimeAsString">
<xs:sequence/>
</xs:complexType>
−
<xs:complexType name="getTimeAsStringResponse">
−
<xs:sequence>
<xs:element name="return" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
−
<xs:complexType name="getTimeAsElapsed">
<xs:sequence/>
</xs:complexType>
−
<xs:complexType name="getTimeAsElapsedResponse">
−
<xs:sequence>
<xs:element name="return" type="xs:long"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

我的问题是为什么'tns'出现在元素声明中?例如:

<xs:element name="getTimeAsElapsed" type=" tns: getTimeAsElapsed"/>

我没有看到'tns'被声明为命名空间前缀的模式文档,模式文档只是以

开头
<xs:schema version="1.0" targetNamespace="http://ts.ch01/">

那为什么在引用其他元素时出现'tns'呢?这是 JAX-WS 生成的 XML 模式的默认行为吗?

最佳答案

根据 w3,tns 表示“此命名空间”,指的是当前文档。

来源:https://www.w3.org/TR/wsdl.html#_notational

关于xml - 出现在 Web 服务模式中的 tns,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6255155/

相关文章:

java - Android "values-large-land"资源未加载

java - 在 Java 中使用 Transformer 实现 XSLT 的多个输出?

java - JSR 跨域验证

java - RPC/Encoded Jboss 问题

java - 是什么使得带有 portType 但没有绑定(bind)的 wsdl 文件正确?

python - 比较两个 xml 文件,无论其顺序如何

Java 数据结构存储平面 XML 数据以供以后访问

web-services - Web 应用程序(或网站)响应请求的最长时间是多少?

java - 在 Tomcat 上访问 wsdl

grails - 在 Grails 中使用 WSDL