我正在尝试使用 TOP-DOWN 和 Axis 1.4 部署 Web 服务,通过 Eclipse 的向导“Web 服务 > 生成 Java 骨架”,我有一个包含其模式的 WSDL。一种特定的 complexType 对其元素有限制(用于输入):
<xsd:complexType name="InformacionClienteRequestModel">
<xsd:sequence>
<xsd:element name="numRut">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:pattern value="\d{9}\-[k|K|0-9]"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="codSituacion">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:pattern value="([ABST][AP][AP])?|([ABST][AP][AP])(,([ABST][AP][AP]))*"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="filtroCodSituacion">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:pattern value="[IE]?"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="pagina">
<xsd:simpleType>
<xsd:restriction base="xsd:int">
<xsd:minInclusive value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="registrosPorPagina">
<xsd:simpleType>
<xsd:restriction base="xsd:int">
<xsd:minInclusive value="1"/>
<xsd:maxInclusive value="50"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
当它部署在服务器上时(我尝试了 Websphere 和 Tomcat),这个 complexType 结束如下:
<complexType name="InformacionClienteRequestModel">
<sequence>
<element name="numRut" type="xsd:string"/>
<element name="codSituacion" type="xsd:string"/>
<element name="filtroCodSituacion" type="xsd:string"/>
<element name="pagina" type="xsd:int"/>
<element name="registrosPorPagina" type="xsd:int"/>
</sequence>
</complexType>
它显然没有通过 SOAP 验证输入数据,我到处搜索,但没有得到任何东西。
有任何想法吗?