[python] SOAP pres knihovnu ZSI
Dan Ohnesorg
dan.ohnesorg na gmail.com
Úterý Červenec 4 01:11:34 CEST 2006
Pokousim se pouzit knihovnu ZSI, abych vydoloval z webservices
atcomputers nejake zajimave udaje a nejak zadne zajimave udaje
nedostavam ;-)
Myslim si, ze problem je v tom, ze zatimco ukazkovy request vypada
takto:
POST /webservices/zbozi.asmx HTTP/1.1
Host: www.atcomp.cz
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://www.atcomp.cz/webservices/Cenik"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Cenik xmlns="http://www.atcomp.cz/webservices">
<strUzivatelskeJmeno>string</strUzivatelskeJmeno>
<strUzivatelskeHeslo>string</strUzivatelskeHeslo>
<strZboziKod>string</strZboziKod>
<strZboziPartNumber>string</strZboziPartNumber>
<strZboziPopis>string</strZboziPopis>
<strVyrobceKod>string</strVyrobceKod>
<strKategorieKod>string</strKategorieKod>
<strPodkategorieKod>string</strPodkategorieKod>
</Cenik>
</soap:Body>
</soap:Envelope>
tak request vygenerovany knihovnou ZSI vypada takto
POST /webservices/zbozi.asmx HTTP/1.1
Host: www.atcomp.cz
Accept-Encoding: identity
Content-length: 871
Content-type: text/xml; charset=utf-8
SOAPAction: "http://www.atcomp.cz/webservices/Cenik"
<SOAP-ENV:Envelope
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ZSI="http://www.zolera.com/schemas/ZSI/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Header></SOAP-ENV:Header>
<SOAP-ENV:Body>
<Cenik>
<strUzivatelskeJmeno
xsi:type="xsd:string">XXXXXXXX</strUzivatelskeJmeno>
<strUzivatelskeHeslo
xsi:type="xsd:string">XXXXXXXX</strUzivatelskeHeslo>
<strZboziKod
xsi:type="xsd:string"></strZboziKod>
<strZboziPartNumber
xsi:type="xsd:string"></strZboziPartNumber>
<strZboziPopis
xsi:type="xsd:string">PCI</strZboziPopis>
<strVyrobceKod
xsi:type="xsd:string"></strVyrobceKod>
<strKategorieKod
xsi:type="xsd:string"></strKategorieKod>
<strPodkategorieKod
xsi:type="xsd:string"></strPodkategorieKod>
</Cenik>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
vypada takto. Knihovna ZSI zrejme nedokaze vygenerovat pozadavek ad1,
nicmene vsude pisi, ze je kompatibilni s .Net implementaci. Myslite, ze
odlisnost vygenerovaneho dotazu je zasadni a fungovat to nikdy nebude a
nebo je to v ramci SOAPu normalni chovani a odpoved by prijit mela?
Pro upresneni, server neodpovi chybou, odpovi celkem "rozumne"
Cache-Control: private, max-age=0
Content-Length: 774
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 1.1.4322
Date: Mon, 03 Jul 2006 16:54:21 GMT
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<CenikResponse
xmlns="http://www.atcomp.cz/webservices">
<CenikResult>
<xs:schema id="NewDataSet" xmlns=""
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="NewDataSet"
msdata:IsDataSet="true" msdata:Locale="cs-CZ">
<xs:complexType>
<xs:choice
maxOccurs="unbounded" />
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"
xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1" />
</CenikResult>
</CenikResponse>
</soap:Body>
</soap:Envelope>
Jen odpoved neobsahuje data, ackoliv zcela zarucene nejaka musi
takovyto dotaz vratit. Nenu tu nekdo, kdo uspesne pouziva kombinaci
python + ZSI + SOAP?
zdravim
dan
Další informace o konferenci Python