El ejemplo lo he sacado de la carpeta de
ejemplos de
SOAP::Lite, como te dije... revísalo por favor, porque es posible que esté lo que necesites.
Vamos a ver... antes hay que aclarar cómo vas a trabajar...
El SOAP es un protocolo para intercambiar información. O, mejor dicho, para ejecutar procedimientos en servicios HTTP remotos como si estuvieran en nuestro propio programa o equipo. Y utiliza el XML como base para intercambiar esa información... pero eso no quiere decir que tengamos que 'ver' el XML. Fíjate que en mi ejemplo, el xml se 've' porque está en la sección DATA, pero si fuera una petición SOAP normal, ni lo vería (porque no haría falta).
Entonces...
* ¿No puedes/quieres hablar con el servidor de forma directa?
* ¿O estás obligado a trabajar con el XML?
Entra en SOAP::Lite y mira los ejemplos que hay en la SYNOPSIS, para que veas que dialogar con el servidor no implica tener que ver el XML para nada...
Si, de todas formas, estás obligado a trabajar con el XML, lo puedes grabar a un fichero y leerlo luego como lo he leído la sección DATA. O si el resultado de la petición ya la tienes en una variable escalar, no necesitas nada más que meterla en el deserialize.
La sección DATA sirve para meter datos, configuraciones, comentarios y demás que sólo le interesan a ese programa. No se puede meter nada en él (bueno... yo creo que sí
, pero no lo recomiendo... )
¿No puedes darnos más pistas de cómo realizas toda la transacción?