[Mono-dev] Mono 3.0.10: channel type IRequestSessionChannel is not supported.

Andres G. Aragoneses knocte at gmail.com
Wed May 15 16:49:22 UTC 2013


On 15/05/13 07:39, ticapix wrote:
> Hi,
>
> Using mono 3.0.10, I'm trying to run a simple WCF service/client
> application.
> I put the code here
> https://github.com/ticapix/onvifserver/blob/master/playground/Program.cs
>
> This code is working fine under Windows8 .Net 4.5 in VS Express, but when I
> run it with Mono, I'm getting this stacktrace:
>
> System.InvalidOperationException: channel type IRequestSessionChannel is not
> supported.
>    at
> System.ServiceModel.Channels.HttpChannelFactory`1[System.ServiceModel.Channels.IRequestSessionChannel].OnCreateChannel
> (System.ServiceModel.EndpointAddress address, System.Uri via) [0x000e2] in
> /home/ticapix/externals/mono/mono-3.0.10/mcs/class/System.ServiceModel/System.ServiceModel.Channels/HttpChannelFactory.cs:90
>    at
> System.ServiceModel.Channels.ChannelFactoryBase`1[System.ServiceModel.Channels.IRequestSessionChannel].CreateChannel
> (System.ServiceModel.EndpointAddress remoteAddress, System.Uri via)
> [0x00034] in
> /home/ticapix/externals/mono/mono-3.0.10/mcs/class/System.ServiceModel/System.ServiceModel.Channels/ChannelFactoryBase.cs:117
>    at
> System.ServiceModel.Channels.SecurityChannelFactory`1[System.ServiceModel.Channels.IRequestSessionChannel].OnCreateChannel
> (System.ServiceModel.EndpointAddress remoteAddress, System.Uri via)
> [0x00000] in
> /home/ticapix/externals/mono/mono-3.0.10/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/SecurityChannelFactory.cs:70
>    at
> System.ServiceModel.Channels.ChannelFactoryBase`1[System.ServiceModel.Channels.IRequestSessionChannel].CreateChannel
> (System.ServiceModel.EndpointAddress remoteAddress, System.Uri via)
> [0x00034] in
> /home/ticapix/externals/mono/mono-3.0.10/mcs/class/System.ServiceModel/System.ServiceModel.Channels/ChannelFactoryBase.cs:117
>    at
> System.ServiceModel.Channels.TransactionChannelFactory`1[System.ServiceModel.Channels.IRequestSessionChannel].OnCreateChannel
> (System.ServiceModel.EndpointAddress remoteAddress, System.Uri via)
> [0x00000] in
> /home/ticapix/externals/mono/mono-3.0.10/mcs/class/System.ServiceModel/System.ServiceModel.Channels/TransactionFlowBindingElement.cs:142
>    at
> System.ServiceModel.Channels.ChannelFactoryBase`1[System.ServiceModel.Channels.IRequestSessionChannel].CreateChannel
> (System.ServiceModel.EndpointAddress remoteAddress, System.Uri via)
> [0x00034] in
> /home/ticapix/externals/mono/mono-3.0.10/mcs/class/System.ServiceModel/System.ServiceModel.Channels/ChannelFactoryBase.cs:117
>    at at (wrapper managed-to-native)
> System.Reflection.MonoMethod:InternalInvoke
> (System.Reflection.MonoMethod,object,object[],System.Exception&)
>    at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags
> invokeAttr, System.Reflection.Binder binder, System.Object[] parameters,
> System.Globalization.CultureInfo culture) [0x00054] in
> /home/ticapix/externals/mono/mono-3.0.10/mcs/class/corlib/System.Reflection/MonoMethod.cs:230
>
>  From the Mono source code, the exception is from the "throw
> ex.InnerException;" line
>
> 				var method = factory.GetType ().GetMethod ("CreateChannel", new Type []
> {typeof (EndpointAddress), typeof (Uri)});
> 				try {
> 					channel = (IChannel) method.Invoke (factory, new object []
> {remote_address, Via});
> 					this.factory = factory;
> 				} catch (TargetInvocationException ex) {
> 					if (ex.InnerException != null)
> 						throw ex.InnerException;
> 					else
> 						throw;
> 				}
>
>
> What are my possible actions to make my code running with Mono ?
> Is is a missing implementation or a wrong usage ?

Maybe try the fix suggested in 
http://permalink.gmane.org/gmane.comp.gnome.mono.devel/40283 ?




More information about the Mono-devel-list mailing list