H
Hans Kesting
Hi,
I'm trying to create a client for some webservice. BUT I have only
limited information:
* no WSDL available ("expected Q1-06") (it seems to be written in Java)
* I don't have access (yet) to the real webservice
* I *do* have example SOAP messages
What I'm trying to do is to build a dummy webservice, which should accept
(and respond with) the same SOAP messages. Then I can build my code
against this dummy, so theoretically later I can change the URL to talk
to the real webservice.
The request seems to go fine, but I'm stuck on the response side.
Example from the documentation it's either (on success):
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<Response>
<AesBusinessSession id="25060"/>
</Response>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
or (on failure)
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<Response>
<AesResult message="No server response for: Login" result="false"/>
</Response>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
What I have so far (from the description when I open the asmx in my browser):
<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>
<LoginResponse>
<LoginResult>
<AesBusinessSession id="int" />
<AesResult result="boolean" message="string" resultType="string">
<resultArg />
</AesResult>
</LoginResult>
</LoginResponse>
</soap:Body>
</soap:Envelope>
The AesBusinessSession and AesResult are both classes, with a specified number
of properties. When returned objects or properties are null, I expect them to be
missing from the response.
The fact that the examples specify "SOAP-ENV" and my version "soap" should
also be no problem (if I understand things correctly).
The problem is the nesting level of the response. The examples have just a
"Response" between the "body" and the "AesBusinessSession" or "AesResult",
I have "LoginResponse" AND "LoginResult".
How can I adjust that? Or (also fine) is that not a problem?
Hans Kesting
I'm trying to create a client for some webservice. BUT I have only
limited information:
* no WSDL available ("expected Q1-06") (it seems to be written in Java)
* I don't have access (yet) to the real webservice
* I *do* have example SOAP messages
What I'm trying to do is to build a dummy webservice, which should accept
(and respond with) the same SOAP messages. Then I can build my code
against this dummy, so theoretically later I can change the URL to talk
to the real webservice.
The request seems to go fine, but I'm stuck on the response side.
Example from the documentation it's either (on success):
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<Response>
<AesBusinessSession id="25060"/>
</Response>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
or (on failure)
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<Response>
<AesResult message="No server response for: Login" result="false"/>
</Response>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
What I have so far (from the description when I open the asmx in my browser):
<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>
<LoginResponse>
<LoginResult>
<AesBusinessSession id="int" />
<AesResult result="boolean" message="string" resultType="string">
<resultArg />
</AesResult>
</LoginResult>
</LoginResponse>
</soap:Body>
</soap:Envelope>
The AesBusinessSession and AesResult are both classes, with a specified number
of properties. When returned objects or properties are null, I expect them to be
missing from the response.
The fact that the examples specify "SOAP-ENV" and my version "soap" should
also be no problem (if I understand things correctly).
The problem is the nesting level of the response. The examples have just a
"Response" between the "body" and the "AesBusinessSession" or "AesResult",
I have "LoginResponse" AND "LoginResult".
How can I adjust that? Or (also fine) is that not a problem?
Hans Kesting