多くの要素を定義するWSDLファイルを作成しています。このような何か:同一のSOAPヘッダーを使用してWSDL操作で自分自身を繰り返さないようにする方法
<wsdl:operation name="MyOperationName">
<soap:operation soapAction="http://www.domain.dk/myschema#MyService" style="document"/>
<wsdl:input name="MyServiceRequest">
<soap:header use="literal" part="SecurityHeader" message="tns:SecurityHeader"/>
<soap:header use="literal" part="SomethingElseHeader" message="tns:SomethingElseHeader"/>
<soap:header use="literal" part="WhitelistingHeader" message="tns:WhitelistingHeader" wsdl:required="true"/>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="MyServiceResponse">
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="MyFault">
<soap:fault name="MyFault" use="literal"/>
</wsdl:fault>
</wsdl:operation>
私は、WSDL操作の多くを持っており、それらはすべての石鹸の同じ同じリストを共有:ヘッダ要素:
<soap:header use="literal" part="SecurityHeader" message="tns:SecurityHeader"/>
<soap:header use="literal" part="SomethingElseHeader" message="tns:SomethingElseHeader"/>
<soap:header use="literal" part="WhitelistingHeader" message="tns:WhitelistingHeader" wsdl:required="true"/>
を一度だけして、これを定義するためのいくつかの方法がありますどういうわけかwsdl操作に何らかのリファレンスとして「追加」しますか?この方法では、ヘッダーが変更された場合や、新しいヘッダーを追加する必要がある場合に、何かを変更する必要があります。
私はこれのようなwsdl:input要素を拡張しようとしていましたが(下記参照)、ここではxml/wsdl wiseの深さからわかりません。しかし、これは私が探しているものを示しています。
<xs:complexType name="StandardHeaders">
<xs:simpleContent>
<xs:extension base="wsdl:operation">
<soap:header use="literal" part="SecurityHeader" message="tns:SecurityHeader"/>
<soap:header use="literal" part="SomethingElseHeader" message="tns:SomethingElseHeader"/>
<soap:header use="literal" part="WhitelistingHeader" message="tns:WhitelistingHeader" wsdl:required="true"/>
</xs:extension>xx
</xs:simpleContent>
</xs:complexType>
...
<wsdl:input name="MyServiceRequest">
<tns:StandardHeaders />