[Mono-bugs] [Bug 79057][Wis] New - Mono does not correctly map types in SOAP reply

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Thu Aug 10 20:14:50 EDT 2006


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by nathan at mammoth.com.au.

http://bugzilla.ximian.com/show_bug.cgi?id=79057

--- shadow/79057	2006-08-10 20:14:50.000000000 -0400
+++ shadow/79057.tmp.25905	2006-08-10 20:14:50.000000000 -0400
@@ -0,0 +1,72 @@
+Bug#: 79057
+Product: Mono: Class Libraries
+Version: 1.1
+OS: 
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Wishlist
+Component: Sys.Web.Services
+AssignedTo: lluis at ximian.com                            
+ReportedBy: nathan at mammoth.com.au               
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: Mono does not correctly map types in SOAP reply
+
+Description of Problem:
+
+I have a third-party DLL that performs a web service call. After retrieving
+the data the result is returned as a long[] array.
+
+This works correctly on Windows but fails on Mono due to an
+InvalidCastException. With a bit of monodis/ilasm hackery I altered the
+third-party .dll to simply return the object.
+
+From there I could print out the type and otherwise inspect what Mono is
+giving me.
+
+Windows: System.Int64[]
+Mono: System.Xml.XmlNode[]
+
+Here is the full reply from the server:
+
+<?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/'
+xmlns:soapenc='http://schemas.xmlsoap.org/soap/encoding/'
+soap:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'
+xmlns:ns5='urn:theplatform-com:v4/base/'>
+<soap:Body>
+<n:addMediaResponse xmlns:n='urn:theplatform-com:v4/'>
+<Result href='#id0'></Result>
+</n:addMediaResponse>
+<id0 id='id0' soapenc:root='0' xsi:type='ns5:IDList'
+soapenc:arrayType='xsd:long[1]'>
+<i xsi:type='xsd:long'>96396792</i>
+</id0>
+</soap:Body>
+</soap:Envelope>
+
+Actual Results:
+
+I receive an array of XmlNode[] 's - 4 XmlAttribute's followed by 1
+XmlElement.  If i use WriteTo() on each object I see
+
+id="id0" soapenc:root="0" xsi:type="ns5:IDList"
+soapenc:arrayType="xsd:long[1]"
+xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"><i
+xsi:type="xsd:long">96398810</i>
+
+Expected Results:
+
+I should receive a long[] of length 1, containing element 96398810.
+
+How often does this happen? 
+
+Every time.


More information about the mono-bugs mailing list