[Python-de] WSDL erzeugen?

Patrick Holz patrick.holz at uni-koeln.de
Fre Feb 10 15:17:21 CET 2006


Hi,

erstmal danke für die Antwort.

> AFAIK nicht

Das hatte ich befürchtet...

> Alternativ: design dein interface in JAVA

Ich überleg mal kurz... äh, nö. ;)

> Oder in den sauren Apfel beissen.... immer dran denken: XML ist
> menschenlesbar..

Hehe, und die Erde ne Scheibe und der Strom gelb. :) Aber ich habe mich
tatsächlich rangetraut und das WSDL-Dokument von Hand geschrieben.
Unglaublich, aber es funktioniert - zumindest lokal auf dem Server. Wenn
ich das Dokument aber per Apache bereitstelle und über http darauf
zugreife, erhalte ich seltsamerweise ne Fehlermeldung:

Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "/usr/local/lib/python2.4/site-packages/SOAPpy/WSDL.py", line 61,
in __init__
    stream = urllib.urlopen(wsdlsource)
  File "/usr/local/lib/python2.4/urllib.py", line 77, in urlopen
    return opener.open(url)
  File "/usr/local/lib/python2.4/urllib.py", line 185, in open
    return getattr(self, name)(url)
  File "/usr/local/lib/python2.4/urllib.py", line 317, in open_http
    return self.http_error(url, fp, errcode, errmsg, headers)
  File "/usr/local/lib/python2.4/urllib.py", line 334, in http_error
    return self.http_error_default(url, fp, errcode, errmsg, headers)
  File "/usr/local/lib/python2.4/urllib.py", line 574, in http_error_default
    return addinfourl(fp, headers, "http:" + url)
  File "/usr/local/lib/python2.4/urllib.py", line 863, in __init__
    addbase.__init__(self, fp)
  File "/usr/local/lib/python2.4/urllib.py", line 813, in __init__
    self.read = self.fp.read
AttributeError: 'NoneType' object has no attribute 'read'

Ist es mal wieder ein Kodierungsproblem? Fehlt mir ein Modul (habe
SOAPpy und urllib importiert)? Per Webbrowser sieht der WSDL-File
korrekt aus.

MfG, Patrick Holz

-- 
Dipl.-Wirt.-Inf. Patrick Holz
Zentrum für angewandte Informatik Köln (ZAIK)
Mail: patrick.holz at uni-koeln.de
Tel.: 49-(0)221-478-7002
URL: http://www.uni-koeln.de/rrzk/Autoren/HL
Skype: Holyfive

Diez B. Roggisch wrote:
> On Friday 10 February 2006 13:07, Patrick Holz wrote:
>> Hallo Liste,
>>
>> ich "darf" mich derzeit mit SOAP Web Services beschäftigen und benutze
>> Python zur Erstellung einiger Praxisbeispiele. Auf der SOAP-Ebene gibt's
>> da bislang kein Problem, aber nun würde ich gerne ein WSDL-Dokument zu
>> einem der Services generieren. Leider finde ich aber im SOAPpy-Modul nur
>> clientseitige WSDL-Unterstützung. Gibt es auch eine Möglichkeit, Python
>> das WSDL-Dokument automatisch erzeugen zu lassen (und mir einige
>> Handarbeit zu ersparen...)?
> 
> AFAIK nicht - das "Problem" liegt in der Dynamik von python: in JAVA zb kann 
> man mittels Typinformation über eine gegebene Klasse traversieren, und dann 
> eine WSDL daraus erzeugen, da man sowohl Parameter- als auch Ergebnistypen 
> kennt. Sowas geht aber in python nicht...
> 
> Das einzige was ich mir vorstellen kann - und da weiss ich nicht, obs das so 
> schon gibt - wäre mittels Dekoratoren die Signaturen entsprechender 
> Funktionen zu annotieren, und das dann zur WSDL-generierung heranzuziehen. 
> 
> Alternativ: design dein interface in JAVA (ohne auf die eingebauten 
> Collections zuzugreifen, bzw. du musst die typ-mappings dafür ans laufen 
> kriegen, geben tut's die), und lass dir mittels java2wsdl (axis-toolkit) die 
> WSDL erzeugen. 
> 
> Oder in den sauren Apfel beissen.... immer dran denken: XML ist 
> menschenlesbar.. *hust*
> 
> Diez
> 
> _______________________________________________
> python-de maillist  -  python-de at python.net
> http://python.net/mailman/listinfo/python-de
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : smime.p7s
Dateityp    : application/x-pkcs7-signature
Dateigröße  : 3189 bytes
Beschreibung: S/MIME Cryptographic Signature
URL         : http://python.net/pipermail/python-de/attachments/20060210/0d2bb027/smime.bin