Unterstützung gebundener Anhänge: WSDL-Beispiele

Verwenden Sie diese Task, um Beispiele für WSDL-Fragments mit der Codierung Web Services-Interoperability (WS-I) Attachments Profile Version 1.0 und mit der Codierung SOAP Messages with Attachments anzuzeigen.

Informationen zu diesem Vorgang

Web Services-Interoperability (WS-I) Attachments Profile Version 1.0 definierte eine Konvention für das Erstellen der Inhalts-ID (Content ID) für einen gebundenen Anhang. Diese Konvention codiert den Namen des Nachrichtenabschnitts. Damit können die Serviceintegrationstechnologien einen gebundenen Anhang erkennen, unabhängig davon, ob der SOAP-Body Elemente für diesen Nachrichtenabschnitt enthält. Die Konvention für das Erstellen einer Inhalts-ID ist wie folgt:
Name=UUID@Domäne
Name steht für den Namen des zu codierenden Nachrichtenabschnitts, UUID für eine globale eindeutige ID und Domäne für eine Domänen-ID (z. B. my.example.com).
Anmerkung: Diese Methode unterscheidet sich vom Codierungsschema von SOAP Messages with Attachments, das keine Konventionen für die Inhalts-ID definiert, sondern Elemente im SOAP-Body verwendet, um den Nachrichtenabschnitt zu identifizieren, der als Anhang codiert ist.

Für die Unterscheidung dieser Fälle gehen die Serviceintegrationstechnologien davon aus, dass es sich um eine Nachricht der Version 1.0 handelt, wenn ein Nachrichtenanhang der Konvention der Version 1.0 für das Erstellen der Inhalts-ID folgt.

Beispiel

Das folgende WSDL-Fragment ist für einen gebundenen Anhang in Nachrichteninstanzen bestimmt, die beiden Stilen entsprechen:

<wsdl:binding name="BoundSoapBinding" type="intf:BoundPortType">
    <soap:binding style="rpc"
                  transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="bound">
      <soap:operation soapAction=""/>
      <wsdl:input>
        <mime:multipartRelated>
          <mime:part>
            <soap:body parts="stringIn" namespace="http://bound"
                       use="literal"/>
          </mime:part>
          <mime:part>
            <mime:content part="attachIn" type="text/xml"/>
          </mime:part>
        </mime:multipartRelated>
      </wsdl:input>

Das folgende WSDL-Fragment ist für eine SOAP-Instanz bestimmt, die die Codierung der Version 1.0 verwendet. In diesem Fragment enthält der Nachrichtenhauptteil (Body) keine Angabe zum Nachrichtenabschnitt attachIn, und die Inhalts-ID des Anhangs gibt den codierten Nachrichtenabschnitt an.

--myBoundary
Content-Type: text/xml
Content-Transfer-Encoding: 7bit
Content-Id: <myStartID>

<SOAP-ENV:Envelope
 xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Body>
    <ns0:bound xmlns:ns0="http://bound">
      <stringIn>some string data</stringIn>
    </ns0:bound>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

--myBoundary
Content-Type: text/xml
Content-Transfer-Encoding: 7bit
Content-Id: <attachIn=someUUID@some.domain.name>

<someOtherXMLElement/>
--myBoundary--

Das folgende WSDL-Fragment ist für eine SOAP-Instanz bestimmt, die die Codierung SOAP Messages with Attachments verwendet. In diesem Fragment enthält der Nachrichtenhauptteil eine Referenz auf den gebundenen Anhang, und die Inhalts-ID des Anhangs ist nicht beschränkt.

--myBoundary
Content-Type: text/xml
Content-Transfer-Encoding: 7bit
Content-Id: <myStartID>

<SOAP-ENV:Envelope
 xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Body>
    <ns0:bound xmlns:ns0="http://bound">
      <stringIn>some string data</stringIn>
      <attachIn href="cid:notTheStart"/>
    </ns0:bound>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

--myBoundary
Content-Type: text/xml
Content-Transfer-Encoding: 7bit
Content-Id: <notTheStart>

<someOtherXMLElement/>
--myBoundary--

In den vorgestellten Fällen, sind die in der Nachricht enthaltenen Informationen ausreichend, um den gebundenen Anhang zu identifizieren, und in beiden Fällen fügen die Serviceintegrationstechnologien einen Eintrag für gebundenen Anhang in die Anhangliste und die Daten aus dem Anhang in den Hauptteil (body) des Datengraphen ein.


Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tjw_attach_bound_wsdl
Dateiname:tjw_attach_bound_wsdl.html