[Mono-bugs] [Bug 78042][Nor] Changed - [PATCH] SOAP list result error. Mono expects response namespace, but it shouldn't (Form property)

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Mon Nov 27 11:38:00 EST 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 atsushi at ximian.com.

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

--- shadow/78042	2006-11-08 02:36:06.000000000 -0500
+++ shadow/78042.tmp.27371	2006-11-27 11:38:00.000000000 -0500
@@ -11,13 +11,13 @@
 AssignedTo: atsushi at ximian.com                            
 ReportedBy: krzymkowski at kontinuum.pl               
 QAContact: mono-bugs at ximian.com
 TargetMilestone: ---
 URL: 
 Cc: 
-Summary: SOAP list result error. Mono expects response namespace, but it shouldn't
+Summary: [PATCH] SOAP list result error. Mono expects response namespace, but it shouldn't (Form property)
 
 Description of Problem: 
 Mono expects that sub-elements of a SOAP response are in the response
 namespace. .NET expects no namespace. Please see attached SOAP responses.
 mono.soap works only on mono, dotnet.soap works only on .NET.
 The Service.wsdl and the responses are files is generated using gSOAP.
@@ -148,6 +148,46 @@
 (ctx.Response.OutputStream);
                 sw.Write (sr.ReadToEnd ());
                 sw.Close ();
         }
 }
 
+
+------- Additional Comments From atsushi at ximian.com  2006-11-27 11:38 -------
+I think I have a fix. The bug is caused because we didn't consider
+XmlArrayAttribute. This would illustrate the same issue.
+
+--------
+using System;
+using System.Xml.Schema;
+using System.Xml.Serialization;
+
+[XmlType (Namespace="urn:gyabo")]
+public class mid
+{
+        [XmlArray (Form = XmlSchemaForm.Unqualified)]
+        public string [] Whee = new string [] {"foo", "bar"};
+}
+
+[XmlRoot (Namespace="urn:hoge")]
+public class test
+{
+        public static void Main ()
+        {
+                XmlArrayAttribute a = new XmlArrayAttribute ();
+                a.Namespace = "urn:foo";
+                a.Form = XmlSchemaForm.Unqualified;
+
+                XmlSerializer ser = new XmlSerializer (typeof (test));
+                ser.Serialize (Console.Out, new test ());
+        }
+
+        [XmlArray (Form = XmlSchemaForm.Unqualified)]
+        public string [] Whoa = new string [] {"foo", "bar"};
+
+        [XmlArray (Form = XmlSchemaForm.Unqualified)]
+        public mid [] mids = new mid [] {new mid ()};
+}
+--------
+
+I'm attaching a patch before committing, as some other guys might find
+erroneous changes.


More information about the mono-bugs mailing list