Para probarlo voy a invocar un servicio web de WebserviceX.NET para obtener la tasa de conversión de monedas (CurrencyConvertor) entre USD y EUR
1. Crear un archivo XML con el contenido de la petición (Request) que se hará al servicio web. En mi caso lo llamaré request.xml con el siguiente contenido:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://www.webserviceX.NET/">
<soapenv:Header/>
<soapenv:Body>
<web:ConversionRate>
<web:FromCurrency>USD</web:FromCurrency>
<web:ToCurrency>EUR</web:ToCurrency>
</web:ConversionRate>
</soapenv:Body>
</soapenv:Envelope>
2. Para invocar el servicio web usando la petición XML (Request) guardada en el archivo, ejecutar el siguiente comando:
curl -H "Content-Type: text/xml; charset=utf-8" -H "SOAPAction:" -d @request.xml -X POST http://www.webservicex.net/CurrencyConvertor.asmx -o response.xmlSí se desea almacenar la respuesta (Response) del servicio web en un archivo usar el argumento -o seguido del nombre del archivo (response.xml)