Найти - Пользователи
Полная версия: SOAP + WSDL
Начало » Network » SOAP + WSDL
1
djung
Привет всем,

я новичёк в питоне, может поэтому никак не могу разобраться в следующей проблеме:

имеется скрипт на php который работает (хотя тяжело это назвать скриптом, ну да ладно):
—————————————-
<?php
ini_set('soap.wsdl_cache_enabled', 1);
$client = new SoapClient('http://sun2.lehmanns.de:8080/.beta/v2/lobsuche.wsdl');
$result = unserialize($client->ISBNSearch(“9783785735848”));
echo $result.“\n”;
?>
—————————————-
я упорно пытаюсь сделать тоже самое на питоне, но увы ничего не получается, делаю я это так:
—————————————-
from SOAPpy import WSDL
wsdlFile = 'http://www.xmethods.net/sd/2001/TemperatureService.wsdl')
server= WSDL.Proxy(wsdlFile)
—————————————-
но уже после этих строк питон возмущается, а иммено так:
—————————————-
Traceback (most recent call last):
File “<stdin>”, line 1, in <module>
File “/var/lib/python-support/python2.5/SOAPpy/WSDL.py”, line 62, in __init__
self.wsdl = reader.loadFromStream(stream, wsdlsource)
File “/var/lib/python-support/python2.5/SOAPpy/wstools/WSDLTools.py”, line 34, in loadFromStream
wsdl.load(document)
File “/var/lib/python-support/python2.5/SOAPpy/wstools/WSDLTools.py”, line 247, in load
service.load(ports)
File “/var/lib/python-support/python2.5/SOAPpy/wstools/WSDLTools.py”, line 1014, in load
binding = ParseQName(binding, element)
File “/var/lib/python-support/python2.5/SOAPpy/wstools/WSDLTools.py”, line 1302, in ParseQName
nsuri = DOM.findTargetNS(element)
File “/var/lib/python-support/python2.5/SOAPpy/wstools/Utility.py”, line 550, in findTargetNS
raise DOMException('Cannot determine target namespace.')
SOAPpy.wstools.Utility.DOMException: Cannot determine target namespace.
—————————————-

никак не могу понять почему пхп с этим wsdl работает а питон нет :-(
я пробовал с некоторыми другими wsdl-ями, там всё нормально

подскажите в чём проблема и как мне её решить?

заранее спасибо.
shiza
Ошибку у себя не смог воспроизвести: у меня выскакивают другие ошибки =)
Но глядя, на код могу сказать, что например файла http://www.xmethods.net/sd/2001/TemperatureService.wsdl - по этому адресу не существует. Может в этом дело?

Я смотрю на сайт soapy (http://soapy.sourceforge.net/) и вижу что последняя версия вышла в 2001. Ты эту библиотеку используешь?
Мне кажется что иммет смысл поглядеть на какую-нибудь другую тулзу, посовременнее: http://pypi.python.org/pypi?%3Aaction=search&term=soap&submit=search
djung
я перепутал когда создавал топик, на самом деле надо использовать тотже wsdl что и в пхп скрипте, имменно с ним у меня были такие ошибки.

насчёт pypi, я посмотрю спасибо =)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB