[Mono-dev] MessageHeader.GetUntypedHeader throw exception
Atsushi Eno
atsushieno at veritas-vos-liberabit.com
Thu Apr 21 08:36:14 EDT 2011
It's just a bug, so please file one on https://bugzilla.novell.com.
Atsushi Eno
(2011/04/21 18:26), Cocai wrote:
> In a simple service like
> [ServiceContract]
> public interface IMyService
> {
> [OperationContract]
> void Request(Message msg);
> }
>
> if is added a System.ServiceModel.MessageHeader to the
> System.ServiceModel.Channels.Message by typed header in this way:
>
> var msg = Message.CreateMessage(MessageVersion.Default,
> "http://tempuri.org/IService/Request", "My Body");
> var value = "TestHeader1";
> var header = new MessageHeader<string>(value);
> var h2 = header.GetUntypedHeader("HeaderName", "http://tempuri.org/");
> msg.Headers.Add(h2);
>
> when calling the service method Request(msg) in mono is throw an exception,
> but if the header is added by:
>
> var h2 = MessageHeader.CreateHeader("HeaderName", "http://tempuri.org/",
> value );
>
> without the use of typed header, all goes right.
>
>
> The exception throw is:
>
> System.ArgumentNullException has been thrown
> "Argument cannot be null.
> Parameter name: text"
>
> at System.Xml.XmlBinaryDictionaryWriter.WriteString (System.String text)
> [0x00006] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.Runtime.Serialization/System.Xml/XmlBinaryDictionaryWriter.cs:719
> at System.Xml.XmlDictionaryWriter.WriteAttributeString (System.String
> prefix, System.Xml.XmlDictionaryString localName,
> System.Xml.XmlDictionaryString namespaceUri, System.String value) [0x00009]
> in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.Runtime.Serialization/System.Xml/XmlDictionaryWriter.cs:166
> at System.ServiceModel.Channels.MessageHeader.WriteHeaderAttributes
> (System.Xml.XmlDictionaryWriter writer,
> System.ServiceModel.Channels.MessageVersion version) [0x0009a] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel.Channels/MessageHeader.cs:178
> at System.ServiceModel.Channels.MessageHeader.OnWriteStartHeader
> (System.Xml.XmlDictionaryWriter writer,
> System.ServiceModel.Channels.MessageVersion version) [0x00082] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel.Channels/MessageHeader.cs:131
> at System.ServiceModel.Channels.MessageHeader.WriteStartHeader
> (System.Xml.XmlDictionaryWriter writer,
> System.ServiceModel.Channels.MessageVersion version) [0x00000] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel.Channels/MessageHeader.cs:197
> at System.ServiceModel.Channels.MessageHeaders.WriteStartHeader (Int32
> index, System.Xml.XmlDictionaryWriter writer) [0x0003e] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel.Channels/MessageHeaders.cs:300
> at System.ServiceModel.Channels.MessageHeaders.WriteHeader (Int32 index,
> System.Xml.XmlDictionaryWriter writer) [0x00016] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel.Channels/MessageHeaders.cs:268
> at System.ServiceModel.Channels.Message.OnWriteMessage
> (System.Xml.XmlDictionaryWriter writer) [0x00047] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel.Channels/Message.cs:256
> at System.ServiceModel.Channels.Message.WriteMessage
> (System.Xml.XmlDictionaryWriter writer) [0x00026] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel.Channels/Message.cs:170
> at System.ServiceModel.Channels.BinaryMessageEncoder.WriteMessage
> (System.ServiceModel.Channels.Message message, System.IO.Stream stream)
> [0x0002a] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel.Channels/BinaryMessageEncoder.cs:118
> at System.ServiceModel.Channels.TcpBinaryFrameManager.WriteSizedMessage
> (System.ServiceModel.Channels.Message message) [0x00093] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel.Channels/TcpBinaryFrameManager.cs:389
> at System.ServiceModel.Channels.TcpDuplexSessionChannel.Send
> (System.ServiceModel.Channels.Message message, TimeSpan timeout) [0x00076]
> in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel.Channels/TcpDuplexSessionChannel.cs:150
> at System.ServiceModel.MonoInternal.ClientRuntimeChannel.RequestCorrelated
> (System.ServiceModel.Channels.Message msg, TimeSpan timeout, IOutputChannel
> channel) [0x00006] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel/ClientRuntimeChannel.cs:587
> at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Request
> (System.ServiceModel.Channels.Message msg, TimeSpan timeout) [0x00019] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel/ClientRuntimeChannel.cs:581
> at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Request
> (System.ServiceModel.Description.OperationDescription od, System.Object[]
> parameters) [0x00066] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel/ClientRuntimeChannel.cs:534
> at System.ServiceModel.MonoInternal.ClientRuntimeChannel.DoProcess
> (System.Reflection.MethodBase method, System.String operationName,
> System.Object[] parameters) [0x00038] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel/ClientRuntimeChannel.cs:499
> at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Process
> (System.Reflection.MethodBase method, System.String operationName,
> System.Object[] parameters) [0x00000] in
> /usr/src/packages/BUILD/mono-2.10.1/mcs/class/System.ServiceModel/System.ServiceModel/ClientRuntimeChannel.cs:479
>
>
> Is typed header unsupported? There is some other workaround to continue to
> use typed header?
>
> Thanks in advance.
>
> Cristiano
>
> --
> View this message in context: http://mono.1490590.n4.nabble.com/MessageHeader-GetUntypedHeader-throw-exception-tp3465477p3465477.html
> Sent from the Mono - Dev mailing list archive at Nabble.com.
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
>
>
More information about the Mono-devel-list
mailing list