[Mono-bugs] [Bug 422491] New: Remoting: Passing ObjRef from Windows to Mono throws " Object type System.Int64 cannot be converted to target type: System.Int32"
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Wed Sep 3 06:50:58 EDT 2008
https://bugzilla.novell.com/show_bug.cgi?id=422491
Summary: Remoting: Passing ObjRef from Windows to Mono throws
"Object type System.Int64 cannot be converted to target
type: System.Int32"
Product: Mono: Runtime
Version: SVN
Platform: 64bit
OS/Version: Linux
Status: NEW
Severity: Normal
Priority: P5 - None
Component: remoting
AssignedTo: lluis at novell.com
ReportedBy: steffen.enni at gmail.com
QAContact: mono-bugs at lists.ximian.com
Found By: ---
Created an attachment (id=237057)
--> (https://bugzilla.novell.com/attachment.cgi?id=237057)
Example reproducing the behavior.
I have a server and a client, both implementing the below IHello interface.
When the client calls HelloWithCallback() the server performs a callback on
remoteRef.Hello() to the client.
Client Server
--------HelloWithCallback()-------->
<--------------Hello()--------------
---(return from Hello)------------->
<--(return from HelloWithCallback)--
public interface IHello
{
void HelloWithCallback(string sender, IHello remoteRef);
void Hello(string sender);
}
When both Client and Server runs on Mono (or both on Windows) this works.
Likewise the Client on mono and server on windows it also works.
But when the Server is on Mono and the Client is on windows the invocation of
HelloWithCallback() fails with the below exception:
I suspect this is similar to case 381555.
I've attached a case reproducing the behavior. It can be compiled on Mono using
MonoDevelop and on Windows using Visual Studio 2008.
Unhandled Exception: System.ArgumentException: Object type System.Int64 cannot
be converted to target type: System.Int32
Parameter name: val
Server stack trace:
at System.Reflection.MonoField.SetValue (System.Object obj, System.Object
val, BindingFlags invokeAttr, System.Reflection.Binder binder, Syste
m.Globalization.CultureInfo culture) [0x00000]
at System.Reflection.FieldInfo.SetValue (System.Object obj, System.Object
value) [0x00000]
at System.Runtime.Serialization.FormatterServices.PopulateObjectMembers
(System.Object obj, System.Reflection.MemberInfo[] members, System.Obj
ect[] data) [0x00000]
at
System.Runtime.Serialization.Formatters.Soap.SoapReader.DeserializeSimpleObject
(System.Object obj, Int64 id, System.Boolean& hasFixup) [0x
00000]
at System.Runtime.Serialization.Formatters.Soap.SoapReader.DeserializeObject
(System.Type type, Int64 id, Int64 parentId, System.Reflection.Me
mberInfo parentMemberInfo, System.Int32[] indices) [0x00000]
at System.Runtime.Serialization.Formatters.Soap.SoapReader.Deserialize ()
[0x00000]
at System.Runtime.Serialization.Formatters.Soap.SoapReader.Deserialize
(System.IO.Stream inStream, ISoapMessage soapMessage) [0x00000]
at System.Runtime.Serialization.Formatters.Soap.SoapFormatter.Deserialize
(System.IO.Stream serializationStream, System.Runtime.Remoting.Messa
ging.HeaderHandler handler) [0x00000]
at System.Runtime.Serialization.Formatters.Soap.SoapFormatter.Deserialize
(System.IO.Stream serializationStream) [0x00000]
at System.Runtime.Remoting.Channels.SoapServerFormatterSink.ProcessMessage
(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransport
Headers requestHeaders, System.IO.Stream requestStream, IMessage& responseMsg,
ITransportHeaders& responseHeaders, System.IO.Stream& responseStr
eam) [0x00000]
Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage
reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&
msgData, Int32 type)
at Interface.IHello.HelloWithCallback(String sender, IHello remoteRef)
at Client.Program.Main(String[] args) in
D:\Projects\Constellation\mono\PassingObjRef\Client\Program.cs:line 46
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the mono-bugs
mailing list