Я использую DynamicWsdl11Definition в spring-ws для генерации моей спецификации wsdl.В конце концов, я получаю спецификацию без ошибок wsdl, связанных с операциями wsdl, поскольку я не знаю, как автоматически связать конкретные операции wsdl / soap с конкретными ошибками wsdl.Как я могу это сделать?Есть ли способ связать ошибки wsdl с операциями wsdl в схеме XSD?
Вот часть из моего XSD:
<xs:element name="setContextRequest">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="usageContext" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="setContextResponse">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Вот мое исключение:
<xs:element name="InvalidSessionException">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="InvalidSessionException" nillable="true" type="fault:InvalidSession"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Вот спецификация WSDL:
<wsdl:operation name="setContext">
<soap:operation soapAction=""/>
<wsdl:input name="setContextRequest">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="setContextResponse">
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
Мой вопрос состоит в том, как связать ошибку с этой операцией, чтобы в итоге получить:
<wsdl:operation name="setContext">
<soap:operation soapAction=""/>
<wsdl:input name="setContextRequest">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="setContextResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="invalidSession" type="InvalidSession"/>
</wsdl:operation>
Спасибо.
ps: я устанавливаю requestSuffix, responseSuffix и faultSuffix, поэтому могу генерировать сообщения об ошибках wsdl.