我正在尝试使用Weblogic 10.3 clientgen ant任务(包装wsimport)来使用第三方WSDL。执行此操作时,我收到以下错误:
[clientgen] [ERROR]在消息“JobSubmissionErrorFault”中,部分“异常”必须指定“元素”属性
下面是我尝试使用的WSDL的一个子集(名称已被更改以保护无辜者)
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:asjx="urn:XXXXX:XML:AAA:2006/01:Types"
xmlns:tns="urn:XXXXX:Central:2006/01:AAAService"
targetNamespace="urn:XXXXX:Central:2006/01:AAAService">
<wsdl:types>
<xsd:schema elementFormDefault="qualified"
targetNamespace="urn:XXXXX:XML:AAA:2006/01:Types">
<xsd:element name="SubmitRequest">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Type" type="xsd:string" form="unqualified"/>
<xsd:element name="Definition" type="xsd:string" form="unqualified"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="SubmitResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="JobResult" type="asjx:JobResultType" form="unqualified"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="JobSubmissionErrorFaultType">
<xsd:sequence>
<xsd:element name="Detail" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
这个WSDL有效吗?当有问题的元素是wsdl:fault时,可以使用wsdl:part'type'吗?我看过规格并且有点困惑。
查看此link,显示使用类型无效
以下link未说明其是否有效
最后,以下地铁错误link(Weblogic 10.3使用了地铁下的地铁)并未确认这是否是一个问题(它仍在辩论中)。
如果有人能够一劳永逸地确认如果使用'type'为wsdl:fault,则会非常感激。
答案 0 :(得分:1)
取决于你的要求。根据W3,没关系,但是WS-I的人们不同意。
WS-I:(BP2113)soapbind:header,soapbind:headerfault或soapbind:fault元素是指未使用“element”属性定义的wsd:part元素。