[Mono-bugs] [Bug 59084][Maj] New - MONO Beta 1 Web Service bug reading integer

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Tue, 25 May 2004 22:43:34 -0400 (EDT)


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 davidandrewtaylor@hotmail.com.

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

--- shadow/59084	2004-05-25 22:43:34.000000000 -0400
+++ shadow/59084.tmp.4401	2004-05-25 22:43:34.000000000 -0400
@@ -0,0 +1,142 @@
+Bug#: 59084
+Product: Mono: Class Libraries
+Version: unspecified
+OS: Red Hat 9.0
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 002 Two hours
+Priority: Major
+Component: Sys.Web.Services
+AssignedTo: mono-bugs@ximian.com                            
+ReportedBy: davidandrewtaylor@hotmail.com               
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL: 
+Summary: MONO Beta 1 Web Service bug reading integer
+
+Description of Problem:
+When calling a web service, MONO's deserializer is throwing an 
+exception.  It works perfectly on MS.NET but always fails on MONO.
+
+Steps to reproduce the problem:
+1. mcs testing.cs /r:System.Web.Service.dll
+2. mono testing.exe
+
+Actual Results:
+Unhandled Exception: System.FormatException: Input string was not in the 
+correct format.
+in <0x000e8> System.Int32:Parse 
+(string,System.Globalization.NumberStyles,System.IFormatProvider)
+in <0x00013> System.Int32:Parse (string,System.IFormatProvider)
+in <0x00017> System.Xml.XmlConvert:ToInt32 (string)
+in <0x00294> System.Xml.Serialization.XmlCustomFormatter:FromXmlString 
+(System.Xml.Serialization.TypeData,string)
+in <0x00098> 
+System.Xml.Serialization.XmlSerializationReaderInterpreter:GetValueFromXml
+String 
+(string,System.Xml.Serialization.TypeData,System.Xml.Serialization.XmlType
+Mapping)
+in <0x0015f> 
+System.Xml.Serialization.XmlSerializationReaderInterpreter:ReadPrimitiveVa
+lue (System.Xml.Serialization.XmlTypeMapElementInfo)
+in <0x00097> 
+System.Xml.Serialization.XmlSerializationReaderInterpreter:ReadObjectEleme
+nt (System.Xml.Serialization.XmlTypeMapElementInfo)
+in <0x022a0> 
+System.Xml.Serialization.XmlSerializationReaderInterpreter:ReadMembers 
+(System.Xml.Serialization.ClassMap,object,bool,bool)
+in <0x00057> 
+System.Xml.Serialization.XmlSerializationReaderInterpreter:ReadClassInstan
+ceMembers (System.Xml.Serialization.XmlTypeMapping,object)
+in <0x00207> 
+System.Xml.Serialization.XmlSerializationReaderInterpreter:ReadClassInstan
+ce (System.Xml.Serialization.XmlTypeMapping,bool,bool)
+in <0x00064> 
+System.Xml.Serialization.XmlSerializationReaderInterpreter:ReadObject 
+(System.Xml.Serialization.XmlTypeMapping,bool,bool)
+in <0x00021> ReaderCallbackInfo:ReadObject ()
+in <0x00041> (wrapper delegate-invoke) 
+System.MulticastDelegate:invoke_object ()in <0x00264> 
+System.Xml.Serialization.XmlSerializationReader:ReadReferencedElement 
+(string,string)
+in <0x00068> 
+System.Xml.Serialization.XmlSerializationReader:ReadReferencedElement ()
+in <0x00051> 
+System.Xml.Serialization.XmlSerializationReader:ReadReferencedElements ()
+in <0x00355> 
+System.Xml.Serialization.XmlSerializationReaderInterpreter:ReadMessage 
+(System.Xml.Serialization.XmlMembersMapping)
+in <0x000f2> 
+System.Xml.Serialization.XmlSerializationReaderInterpreter:ReadRoot ()
+in <0x00086> System.Xml.Serialization.XmlSerializer:Deserialize 
+(System.Xml.Serialization.XmlSerializationReader)
+in <0x00056> System.Xml.Serialization.XmlSerializer:Deserialize 
+(System.Xml.XmlReader)
+in <0x000fd> 
+System.Web.Services.Protocols.WebServiceHelper:ReadSoapMessage 
+(System.Xml.XmlTextReader,System.Web.Services.Protocols.SoapTypeStubInfo,S
+ystem.Web.Services.Description.SoapBindingUse,System.Xml.Serialization.Xml
+Serializer,object&,System.Web.Services.Protocols.SoapHeaderCollection&)
+in <0x00335> 
+System.Web.Services.Protocols.SoapHttpClientProtocol:ReceiveResponse 
+(System.Net.WebResponse,System.Web.Services.Protocols.SoapClientMessage,Sy
+stem.Web.Services.Protocols.SoapExtension[])
+in <0x0007d> (wrapper remoting-invoke-with-check) 
+System.Web.Services.Protocols.SoapHttpClientProtocol:ReceiveResponse 
+(System.Net.WebResponse,System.Web.Services.Protocols.SoapClientMessage,Sy
+stem.Web.Services.Protocols.SoapExtension[])
+in <0x002ce> System.Web.Services.Protocols.SoapHttpClientProtocol:Invoke 
+(string,object[])
+in <0x0006b> (wrapper remoting-invoke-with-check) 
+System.Web.Services.Protocols.SoapHttpClientProtocol:Invoke (string,object
+[])
+in <0x00055> DomainNameMonitoringWSService:getAllTriggers (string)
+in <0x00058> (wrapper remoting-invoke-with-check) 
+DomainNameMonitoringWSService:getAllTriggers (string)
+in <0x00074> testing:Main ()
+
+Expected Results:
+Should have printed "Number was: 1"
+
+How often does this happen? 
+All the time on MONO Beta 1
+
+Additional Information:
+Please see attached test case.
+
+Note: If it helps here is the format of the xml returned by the AXIS 
+server:
+<?xml version="1.0" encoding="utf-16"?>
+<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:getAllTriggersResponse 
+soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" 
+xmlns:ns1="http://rsp.melbourneit.com/ws/DomainNameMonitoringService">
+     <ns1:getAllTriggersReturn xsi:type="soapenc:Array" 
+soapenc:arrayType="ns1:Trigger[1]" 
+xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
+       <item href="#id0" />
+     </ns1:getAllTriggersReturn>
+   </ns1:getAllTriggersResponse>
+   <multiRef id="id0" soapenc:root="0" 
+soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" 
+xsi:type="ns2:KeywordMonitoringTrigger" 
+xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" 
+xmlns:ns2="http://rsp.melbourneit.com/ws/DomainNameMonitoringService">
+     <description xsi:type="xsd:string">melbourne it</description>
+     <deviceId xsi:type="xsd:int" xsi:nil="true" />
+     <history xsi:type="soapenc:Array" 
+soapenc:arrayType="ns2:KeywordTriggerEvent[0]" />
+     <keywords xsi:type="soapenc:Array" soapenc:arrayType="xsd:string[2]">
+       <item>it</item>
+       <item>melbourne</item>
+     </keywords>
+     <status xsi:type="xsd:string">Active</status>
+     <triggerId xsi:type="xsd:int">10002</triggerId>
+   </multiRef>
+ </soapenv:Body>
+</soapenv:Envelope>