Soporte de archivos adjuntos enlazados: ejemplos de WSDL
Utilice esta tarea para ver ejemplos de fragmentos de WSDL con mensajes SOAP y de codificación Web Services-Interoperability (WS-I) Attachments Profile Versión 1.0 y codificación de Mensajes SOAP con archivos adjuntos.
Acerca de esta tarea
nombre=uuid@dominio
donde nombre es el nombre de la parte de
mensaje que se codifica, uuid es un identificador exclusivo
global y dominio es un identificador de dominio (por ejemplo,
my.example.com).Para distinguir entre los casos, las tecnologías de integración de servicios da por supuesto que, si un archivo adjunto de mensaje sigue el convenio de la versión 1.0 para construir el ID de contenido, entonces es un mensaje de la versión 1.0.
Ejemplo
El siguiente fragmento de archivo WSDL es para un archivo adjunto enlazado, con instancias de mensaje que siguen ambos estilos:
<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>
El siguiente fragmento de WSDL es para una instancia de SOAP que utiliza la codificación de la versión 1.0. En este fragmento, el cuerpo del mensaje no contiene ninguna mención de la parte attachIn y el ID de contenido del archivo adjunto identifica la parte que se codifica.
--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--
El siguiente fragmento de WSDL es para una instancia de SOAP que utiliza la codificación de Mensajes SOAP con archivos adjuntos. En este fragmento, el cuerpo del mensaje contiene una referencia al archivo adjunto enlazado, y el ID de contenido del archivo adjunto no está restringido.
--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--
En los dos casos anteriores, hay información suficiente en el mensaje para identificar el archivo adjunto enlazado y, en ambos casos, las tecnologías de integración de servicios, coloca una entrada de archivo adjunto enlazado en la lista de archivos adjuntos y coloca los datos del archivo adjunto en la sección del cuerpo del gráfico de datos.