ITMT, which form of the changed WSDL below will be best? The responses which return xml documents (as strings) all seem to use the root element of <NewDataSet />, which I think violates the WSDL specification for uniqueness. [?]
I am currently reading the WSDL 1.1 W3C Note dated 15 March 2001, but the published wsdl doesn't seem to quite match with that, and this doc is definitely *not* WSDL 2.0 compliant.
Really appreciate the input. :) I want to do this as well as possible.
Thanks again, Elaine
Dino Chiesa wrote:
Not stupid...
Your approach is reasonable, but... Can you not contact the "card processing service" people and ask them to resolve the difference between the doc and the WSDL ?
-----Original Message-----
From: Elaine Nance [mailto:[EMAIL PROTECTED] Sent: Monday, February 28, 2005 3:45 PM
To: axis-user@ws.apache.org
Subject: Handmade WSDL?
Hope this is not stupid, but
Problem: the wsdl for our (supposedly) enterprise credit card processing service shows well defined request parameters, but the SOAP responses are all designated as string, as shown below.
I am thinking that the best way to generate the client stubs I need in Java is to create a wsdl with better response typing and generate the stubs using WSDL2Java and then test.
Does it make sense to proceed like the above? or should I just build parsers using SAX or DOM or whatever?
Thank you, Elaine
- example request
<s:element name="GetAVSResponseCodeValue">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="sCode" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- example response as given
<s:element name="GetAVSResponseCodeValueResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetAVSResponseCodeValueResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- WHAT THE RESPONSE SHOULD LOOK LIKE (I THINK) <s:element
name="GetAVSResponseCodeValueResponse">
<s:complexType type="s:AVSRespCode">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="AVSCode" type="s:string"/>
<s:element minOccurs="1" maxOccurs="1" name="AVSMessage" type="s:string"/>
<s:element minOccurs="1" maxOccurs="1" name="ID" type="s:string"/>
<s:element minOccurs="1" maxOccurs="1" name="Status" type="s:string"/>
</s:sequence>
</s:complexType>
</s:element>
- ALTERNATIVELY
<s:element name="GetAVSResponseCodeValueResponse">
<s:complexType type="s:NewDataSet">
<s:sequence type="s:AVSRespCode">
<s:element minOccurs="1" maxOccurs="1" name="AVSCode" type="s:string"/>
<s:element minOccurs="1" maxOccurs="1" name="AVSMessage" type="s:string"/>
<s:element minOccurs="1" maxOccurs="1" name="ID" type="s:string"/>
<s:element minOccurs="1" maxOccurs="1" name="Status" type="s:string"/>
</s:sequence>
</s:complexType>
</s:element>
- the web service docs indicate that the xml returned (minus SOAP envelope) will look like the following:
<NewDataSet> <AVSRespCode> <AVSCode>1</AVSCode> <AVSMessage>No Address Supplied</AVSMessage> <ID>1</ID> <Status>E</Status> </AVSRespCode> </NewDataSet>
<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | Computers are useless. They can only give you answers. | -- Pablo Picasso -- <~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~