在部署时从我的 JAX-WS 服务生成的 WSDL 不反映在关联的 XMLSchema .xsd 文件中指定的限制,尽管生成的 Java 类文件可以。我正在使用 xjc 来编译架构。
下面是一些更详细解释的片段: ...来自 .xsd 文件:
<complexType name="AuthToken">
<all
<element name="userName" maxOccurs="1" minOccurs="1">
<simpleType>
<restriction base="string">
<pattern value="[\p{L}\p{Nd}\p{P}]+"></pattern>
</restriction>
</simpleType>
</element>
....
来自 WSDL:
<xs:complexType name="AuthToken">
<xs:all>
<xs:element name="userName" type="xs:string"/>
<xs:element name="password" type="xs:string"/>
<xs:element name="partnerCode" type="xs:string"/>
</xs:all>
....
我本来期望(并且想要)这样的事情:
<xs:element name="username">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[\p{L}\p{Nd}\p{P}]+"/>
</xs:restriction>
</xs:simpleType>
我在定义 web 服务函数调用的顶级 Java impl 文件中是否缺少一些注释或类似内容?任何意见,将不胜感激。我已经看到了几个关于 xsd/wsdl 差异的问题,但似乎没有一个适用。
谢谢。