[pyar] problema con soap suds, y comienzo del Body.

Mariano Reingart reingart en gmail.com
Sab Oct 9 17:12:13 ART 2010


2010/10/9 Daniel Ceillan <codigodaniel en gmail.com>:
> El 7 de octubre de 2010 11:46, Daniel Ceillan <codigodaniel en gmail.com>
> escribió:
>>
>> El 6 de octubre de 2010 13:22, Mariano Reingart <reingart en gmail.com>
>> escribió:
>>>
>>> No, ns0 es solo un nombre, no tiene significado por si mismo.
>>> El tema es que hay varias formas de especificar el namespace:
>>>  * como prefijo <ns0:saraza>
>>>  * como attributo <saraza xmlns='"...">
>>>  * no especificarlo (solo en el targetNamespace principal, tns, xml:ns,
>>> etc.)
>>>  * cualquier combinación de las anteriores
>>>  * cualquier combinación de las anteriores en los nodos hijos
>>> (diferente a la combinación en los nodos padres)
>>>
>>> Todo empeora con que parser te toque (y que versión del mismo), a java
>>> axis le gusta de una forma (depende la version, 1 o 2), a java .jboss
>>> ws le gusta de otra, a .net 2.0 de otra (y net 3.0 es muy rebuscado),
>>> y no hablemos de python, php, etc...
>>>
>>> Algunos parsers son mas estrictos que otros, sobre todo con el
>>> ordenamiento de los tags, namespaces, schemas, etc.
>>>
>>> Esto es con SOAP 1.1, con 1.2 puede variar (y que no te toquen varios
>>> namespaces, imports, etc....)
>>>
>>> YMMV
>>>
>>> Sds
>>>
>>> Mariano Reingart
>>> http://www.sistemasagiles.com.ar
>>> http://reingart.blogspot.com
>
> Mariano, tu libreria es ampliamente mas agil que las otras. Asi que
> seguramente la estare utilizando y LA RECOMIENDO.  :)

Gracias :-)

> Las dudas que me quedan son :
>
> + como agrego encabezados. (UsernameToken por ejemplo)

Por el momento no se puede sin modificar el código.

Tendrías un ejemplo que se pueda probar?

Hay un ticket cargado, si lo podes adjuntar ahí, podría ver de adaptarlo
http://code.google.com/p/pysimplesoap/issues/detail?id=3

> + como cambio el prefijo de la etiqueta body. me la genera asi: <soap:Body>

Con el parámetro soap_ns del cliente (clase Client), y con el
parámetro ns cambias el prefijo del nodo del requerimiento.

Cualquier cosa podés ver el código de client.py, es bastante conciso.

También en la wiki hay algo de documentación:
http://code.google.com/p/pysimplesoap/wiki/SoapClient

Sds

Mariano Reingart
http://www.sistemasagiles.com.ar
http://reingart.blogspot.com



More information about the pyar mailing list