rancavil / tornado-webservices

A implementation of SOAP web services for tornado web server
www.innovaser.cl/innovaser.php
92 stars 32 forks source link

EchoService failed with 'faultcode' when using suds #2

Closed anh closed 13 years ago

anh commented 13 years ago

I use suds soap client to test the echo service and it failed. I still don't know if this is tornado-ws or suds problem:

from suds.client import Client url = 'http://localhost:8080/EchoService?wsdl' c = Client(url) print c Suds ( https://fedorahosted.org/suds/ ) version: 0.4.1 (beta) build: R705-20101207

Service ( EchoService ) tns="http://127.0.0.1:8080/EchoService/echo" Prefixes (1) ns0 = "http://127.0.0.1:8080/EchoService/echo" Ports (1): (EchoServicePort) Methods (1): echo(xs:string message, ) Types (1): paramsTypes

c.service.echo('test') No handlers could be found for logger "suds.umx.typed" Traceback (most recent call last): File "", line 1, in File "/home/anh/env/lib/python2.7/site-packages/suds-0.4.1-py2.7.egg/suds/client.py", line 542, in call return client.invoke(args, kwargs) File "/home/anh/env/lib/python2.7/site-packages/suds-0.4.1-py2.7.egg/suds/client.py", line 602, in invoke result = self.send(soapenv) File "/home/anh/env/lib/python2.7/site-packages/suds-0.4.1-py2.7.egg/suds/client.py", line 651, in send result = self.succeeded(binding, reply.message) File "/home/anh/env/lib/python2.7/site-packages/suds-0.4.1-py2.7.egg/suds/client.py", line 688, in succeeded reply, result = binding.get_reply(self.method, reply) File "/home/anh/env/lib/python2.7/site-packages/suds-0.4.1-py2.7.egg/suds/bindings/binding.py", line 165, in get_reply result = unmarshaller.process(nodes[0], resolved) File "/home/anh/env/lib/python2.7/site-packages/suds-0.4.1-py2.7.egg/suds/umx/typed.py", line 66, in process return Core.process(self, content) File "/home/anh/env/lib/python2.7/site-packages/suds-0.4.1-py2.7.egg/suds/umx/core.py", line 48, in process return self.append(content) File "/home/anh/env/lib/python2.7/site-packages/suds-0.4.1-py2.7.egg/suds/umx/core.py", line 63, in append self.append_children(content) File "/home/anh/env/lib/python2.7/site-packages/suds-0.4.1-py2.7.egg/suds/umx/core.py", line 140, in append_children cval = self.append(cont) File "/home/anh/env/lib/python2.7/site-packages/suds-0.4.1-py2.7.egg/suds/umx/core.py", line 61, in append self.start(content) File "/home/anh/env/lib/python2.7/site-packages/suds-0.4.1-py2.7.egg/suds/umx/typed.py", line 80, in start raise TypeNotFound(content.node.qname()) suds.TypeNotFound: Type not found: 'faultcode'

rancavil commented 13 years ago

Hello, the problem is the version of suds. I am using the version 0.3.7 of suds to make the tests. For see the error, I made the test with the both versions of suds (0.3.7 and 0.4.1), and i had the error with the version 0.4.1. The results at bellow:

With the VERSION 0.3.7

C:\Software\python-suds-0.3.7>python setup.py install

running install

running build

running install_egg_info

Writing C:\Python27\Lib\site-packages\suds-0.3.7-py2.7.egg-info

C:\Software\python-suds-0.3.7>python

Python 2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)] on

win32

Type "help", "copyright", "credits" or "license" for more information.

from suds.client import Client

url = 'http://localhost:8080/EchoService?wsdl'

c = Client(url)

print c

Suds ( https://fedorahosted.org/suds/ ) version: 0.3.7 GA build: R580-20091016

Service ( EchoService ) tns="http://192.168.0.101:8080/EchoService/echo"

Prefixes (1)

  ns0 = "http://192.168.0.101:8080/EchoService/echo"

Ports (1):

  (EchoServicePort)

     Methods (1):

        echo(xs:string message, )

     Types (1):

        paramsTypes

print c.service.echo('test')

Echo say : test

With the VERSION 0.4.1

C:\Software\python-suds-0.4.1>python

Python 2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)] on

win32

Type "help", "copyright", "credits" or "license" for more information.

from suds.client import Client

url = 'http://localhost:8080/EchoService?wsdl'

c = Client(url)

print c

Suds ( https://fedorahosted.org/suds/ ) version: 0.4.1 (beta) build: R705-2010

1207

Service ( EchoService ) tns="http://192.168.0.101:8080/EchoService/echo"

Prefixes (1)

  ns0 = "http://192.168.0.101:8080/EchoService/echo"

Ports (1):

  (EchoServicePort)

     Methods (1):

        echo(xs:string message, )

     Types (1):

        paramsTypes

print c.service.echo('test')

No handlers could be found for logger "suds.umx.typed"

Traceback (most recent call last):

File "", line 1, in

File "suds\client.py", line 542, in call

return client.invoke(args, kwargs)

File "suds\client.py", line 602, in invoke

result = self.send(soapenv)

File "suds\client.py", line 651, in send

result = self.succeeded(binding, reply.message)

File "suds\client.py", line 688, in succeeded

reply, result = binding.get_reply(self.method, reply)

File "suds\bindings\binding.py", line 165, in get_reply

result = unmarshaller.process(nodes[0], resolved)

File "suds\umx\typed.py", line 66, in process

return Core.process(self, content)

File "suds\umx\core.py", line 48, in process

return self.append(content)

File "suds\umx\core.py", line 63, in append

self.append_children(content)

File "suds\umx\core.py", line 140, in append_children

cval = self.append(cont)

File "suds\umx\core.py", line 61, in append

self.start(content)

File "suds\umx\typed.py", line 80, in start

raise TypeNotFound(content.node.qname())

suds.TypeNotFound: Type not found: 'faultcode'

Thank you for reporting the problem. I will continue looking at the issue, to rule out other problems.