[Python-es] Duda con SUDS (consumir web service)

pavel fuentes pafuco05 en gmail.com
Lun Nov 14 18:55:14 CET 2011


No podría ser la forma en que manipulo un stringArray en python?

Si pongo el siguiente código:

#!/Python26/python
from suds.client import Client
url = 'http://localhost:7789/?wsdl'
client = Client(url)
print client

Va bien y me sale en el navegador:

Suds ( https://fedorahosted.org/suds/ )  version: 0.4 GA  build: R699-20100913

Service ( HelloWorldService ) tns="rpclib.examples.hello.soap"
   Prefixes (1)
      ns0 = "rpclib.examples.hello.soap"
   Ports (1):
      (Application)
         Methods (1):
            say_hello(xs:string name, xs:integer times, )
         Types (3):
            say_hello
            say_helloResponse
            stringArray

Pero si agrego las 2 últimas líneas ya me da error 500:

#!/Python26/python
from suds.client import Client
url = 'http://localhost:7789/?wsdl'
client = Client(url)
#print client
d = client.service.say_hello('punk', 5)
print d



On 11/14/11, Eduard Diaz <eventgrafic en gmail.com> wrote:
> Si, un error de sintaxis
>
> No estas construyendo correctamente la cabecera.
>
> http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
>
>
>
> El 14 de noviembre de 2011 17:50, pavel fuentes
> <pafuco05 en gmail.com>escribió:
>
>> Sí, tienes razón, he mirado el log de apache.
>>
>>  Aparece:
>>
>> [Mon Nov 14 11:14:54 2011] [error] [client 127.0.0.1] malformed header
>> from script. Bad header=(stringArray){: sudo.py
>>
>> Incorporé un ciclo  for .. in al código. Ahora me queda
>>
>> #!/Python26/python
>> from suds.client import Client
>> url = 'http://localhost:7789/?wsdl'
>> client = Client(url)
>> saludo = client.service.say_hello('punk', 5)
>> for elemento in saludo:
>>  print elemento
>>
>> El log de error ahora es:
>>  [Mon Nov 14 11:48:08 2011] [error] [client 127.0.0.1] malformed
>> header from script. Bad header=('string', [Hello, punk, Hello: sudo.py
>>
>> ERROR DE SINTAXIS ???
>>
>>
>>
>>
>>
>>
>>
>> On 11/14/11, Carlos Herrera Polo <carlos.herrerapolo en gmail.com> wrote:
>> > Ayudaria bastante si envias el error que debe estar en el log de apache
>> >
>> > El 14/11/11, pavel fuentes <pafuco05 en gmail.com> escribió:
>> >> Hola a todos, alguien me puede ayudar con SUDS, quizás es un error de
>> >> concepto que tengo.
>> >>
>> >> Mi ambiente es windows xp sp3 y apache 2.2.8
>> >>
>> >> Empecé con web service recientemente, tengo en mi directorio de apache
>> >> el clásico ejemplo
>> >> helloworld_soap.py
>> >>
>> >> Cuando accedo a él desde la línea de comandos de python todo va bien y
>> >> obtengo mi respuesta en la consola. El código en la línea de comandos
>> >> es el siguiente:
>> >>
>> >> from suds.client import Client
>> >> url = 'http://localhost:7789/?wsdl'
>> >> client = Client(url)
>> >> client.service.say_hello('punk', 5)
>> >>
>> >> Sin embargo, si hago un fichero .py y trato de acceder desde el
>> >> navegador(http://localhost/sudo.py) obtengo un 500 Internal Server
>> >> Error. Aquí pongo el código que tengo en mi fichero:
>> >>
>> >> #!#!/Python26/python
>> >> from suds.client import Client
>> >> url = 'http://localhost:7789/?wsdl'
>> >> client = Client(url)
>> >> saludo = client.service.say_hello('punk', 5)
>> >> print saludo
>> >>
>> >> Les agradecería si me dieran una mano con esto.
>> >> _______________________________________________
>> >> Python-es mailing list
>> >> Python-es en python.org
>> >> http://mail.python.org/mailman/listinfo/python-es
>> >> FAQ: http://python-es-faq.wikidot.com/
>> >>
>> >
>> > --
>> > Enviado desde mi dispositivo móvil
>> > _______________________________________________
>> > Python-es mailing list
>> > Python-es en python.org
>> > http://mail.python.org/mailman/listinfo/python-es
>> > FAQ: http://python-es-faq.wikidot.com/
>> >
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>


Más información sobre la lista de distribución Python-es