Greetings,
I'm trying to port a CF8 app that provides some web services over to
running on OBD. Things were going along nicely until I tried to access
web services on the ODB version of the code...from another CF8 app. I
got an error that said something like: “could not find deserializer
for type {http://wstypes.newatlanta.com}StructMap”.
So I used SoapUI to interrogate the service running on ODB and the one
running on CF8 and discovered a subtle difference that completely
destroys my API:
CF8 web service response:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/
envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:createMailboxResponse soapenv:encodingStyle="http://
schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://wsvc1_0.na_svr">
<createMailboxReturn xsi:type="ns2:Map" xmlns:ns2="http://
xml.apache.org/xml-soap">
<item xmlns:soapenc="http://schemas.xmlsoap.org/soap/
encoding/">
<key xsi:type="soapenc:string">PASSWORD</key>
<value xsi:type="soapenc:string">ASD987ADS</value>
</item>
<item>
<key xsi:type="soapenc:string" xmlns:soapenc="http://
schemas.xmlsoap.org/soap/encoding/">EMAILADDRESS</key>
<value xsi:type="soapenc:string" xmlns:soapenc="http://
schemas.xmlsoap.org/soap/encoding/">8FFDD82-0509-
[email protected]</value>
</item>
<item>
<key xsi:type="soapenc:string" xmlns:soapenc="http://
schemas.xmlsoap.org/soap/encoding/">USERID</key>
<value xsi:type="soapenc:string" xmlns:soapenc="http://
schemas.xmlsoap.org/soap/encoding/">8FFDD82-0509-
F6D3-085E4F5F5202C004</value>
</item>
</createMailboxReturn>
</ns1:createMailboxResponse>
</soapenv:Body>
</soapenv:Envelope>
ODB web service response:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/
envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:createMailboxResponse soapenv:encodingStyle="http://
schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://wsvc1_0.na_svr">
<createMailboxReturn xsi:type="ns2:StructMap"
xmlns:ns2="http://wstypes.newatlanta.com">
<item soapenc:arrayType="ns2:StructMapItem[3]"
xsi:type="soapenc:Array" xmlns:soapenc="http://schemas.xmlsoap.org/
soap/encoding/">
<item xsi:type="ns2:StructMapItem">
<key xsi:type="soapenc:string">userid</key>
<val
xsi:type="soapenc:string">AB129-753B-455C-9B83C61898E6AF1F</val>
</item>
<item xsi:type="ns2:StructMapItem">
<key xsi:type="soapenc:string">emailaddress</key>
<val
xsi:type="soapenc:string">[email protected]</
val>
</item>
<item xsi:type="ns2:StructMapItem">
<key xsi:type="soapenc:string">password</key>
<val xsi:type="soapenc:string">92HUHHDUSDASD</val>
</item>
</item>
</createMailboxReturn>
</ns1:createMailboxResponse>
</soapenv:Body>
</soapenv:Envelope>
Now, the ODB one looks cleaner to me, but the change in response makes
the service incompatible with my clients who have integrated already
with my CF8 app. Is there something I can do to 'fix' the OBD code to
match what CF8 is doing?
I appreciate any suggestions other users have.
Thanks,
Don
--~--~---------~--~----~------------~-------~--~----~
Open BlueDragon Public Mailing List
http://groups.google.com/group/openbd?hl=en
official site @ http://www.openbluedragon.org/
!! save a network - trim replies before posting !!
-~----------~----~----~----~------~----~------~--~---