konto usunięte

Temat: NuSOAP i Kohana v3

Używał z Was ktoś NuSOAP-a w Kohanie?

Na wysłany Request

POST /index.php HTTP/1.0
Host: localhost
User-Agent: NuSOAP/0.9.5 (1.123)
Content-Type: text/xml; charset=ISO-8859-1
SOAPAction: "http://www.abc.pl/xsd/xyz#hello"
Content-Length: 558

<?xml version="1.0" encoding="ISO-8859-1"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns5244="http://www.abc.pl/xsd/xyz"><SOAP-ENV:Body><ns5244:hello xmlns:ns5244="http://www.abc.pl/xsd/xyz"><name xsi:type="xsd:string">Scott</name></ns5244:hello></SOAP-ENV:Body></SOAP-ENV:Envelope>


dostaję "piękną" odpowiedź w postaci długiego kohanowego html-a, którego można streścić do:

$this->status = 404;
throw new Kohana_Request_Exception('Unable to find a route to match the URI: :uri',
array(':uri' => $uri));


Ogólnie rzecz biorąc, czuję z czego to wynika. Pytanie tylko jak elegancko się z tym obejść?Krzysztof Kozłowski edytował(a) ten post dnia 16.10.10 o godzinie 11:58

konto usunięte

Temat: NuSOAP i Kohana v3

Jedno zauważyłem: że jeżeli podczas deklarowania serwera SOAP nie podam w metodzie configureWSDL() trzeciego parametru ([mixed $endpoint = false]) to w WSDL-u pojawia się błędny adres serwisu:


<service name="wsName">
<port name="wsNamePort" binding="tns:wsNameBinding">
<soap:address location="http://localhost/index.php" />
</port>
</service>


zamiast


<service name="wsName">
<port name="wsNamePort" binding="tns:wsNameBinding">
<soap:address location="http://localhost/xyz" />
</port>
</service>


Podając trzeci parametr ($endpoint) jako "http://localhost/xyz" w WSDL-u adres zaczyna być poprawny, w odpowiedzi nie pojawia się już kohanowa wersja błędu 404. Na wyjściu jest SOAP:Fault


<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode xsi:type="xsd:string">SOAP-ENV:Client</faultcode>
<faultactor xsi:type="xsd:string"></faultactor>
<faultstring xsi:type="xsd:string">error in msg parsing:
xml was empty, didn't parse!</faultstring>
<detail xsi:type="xsd:string"></detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
Krzysztof Kozłowski edytował(a) ten post dnia 16.10.10 o godzinie 18:27

Następna dyskusja:

Co to jest Kohana?




Wyślij zaproszenie do