wsdl2py - KeyError
Verfasst: Mittwoch 16. Januar 2008, 16:26
Hallo,
ich habe mir eine WSDL Datei erstellt und möchte nun einen Dienstanbieter und Nutzer schreiben. Dazu wollte ich per wsdl2py -f meinewsdl.wsdl das Gerüst erstellen. Dies bricht aber leider mit der Fehlermeldung
ab.
GetSquareResponse ist ein Element. Es gibt insgesamt 3 welche wie folgt definiert sind:
Nun habe ich gesehen das oft das Element auch anders beschrieben wird, in dem das umschließende Tag <xsd:element> entfernt wird und das Attribut name="" dem Tag <xsd:complexType> hinzugefügt wird. Wenn ich diese Änderungen bei allen drei Elementen mache ist die Fehlermeldung aber die gleiche.
Nachtrag: Entferne ich das Element GetSquareResponse inkl. der Message und den Eintragen unter Operation dann läuft wsdl2py ohne Fehler durch. Was ich nicht verstehe, warum er nicht bei den anderen Elementen sich beschwert.
Danke schonmal für die Hilfe.
MfG
BjA
ich habe mir eine WSDL Datei erstellt und möchte nun einen Dienstanbieter und Nutzer schreiben. Dazu wollte ich per wsdl2py -f meinewsdl.wsdl das Gerüst erstellen. Dies bricht aber leider mit der Fehlermeldung
Code: Alles auswählen
...
c.setUp(bop)
File "/usr/lib/python2.5/site-packages/ZSI/generate/containers.py", line 515, in setUp
self.outputName = op.getOutputMessage().name
File "/usr/lib/python2.5/site-packages/ZSI/wstools/WSDLTools.py", line 675, in getOutputMessage
return wsdl.messages[self.output.message]
File "/usr/lib/python2.5/site-packages/ZSI/wstools/Utility.py", line 1169, in __getitem__
return self.data[nsuri][name]
KeyError: u'GetSquareResponse'
GetSquareResponse ist ein Element. Es gibt insgesamt 3 welche wie folgt definiert sind:
Code: Alles auswählen
<xsd:element name="GetSquare">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="x" type="xsd:float" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GetSquareResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="y" type="xsd:float" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GetSquareFault">
<xsd:complexType>
<xsd:all>
<xsd:element name="errorMessage" type="string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
Nachtrag: Entferne ich das Element GetSquareResponse inkl. der Message und den Eintragen unter Operation dann läuft wsdl2py ohne Fehler durch. Was ich nicht verstehe, warum er nicht bei den anderen Elementen sich beschwert.
Danke schonmal für die Hilfe.
MfG
BjA