K
kujotx
I have two WSE3.0 projects that are calling an ApacheCXF service over
SSL. One is a Windows Service that is working fine. It returns a list
of complexType objects which serialize fine.
I am using the same service endpoint on an ASP.Net application using
the same cert over SSL to invoke a different method that retrieves a
binary object through MTOM. Curiously, the vendor forced MTOM to be
required on the Windows services method as well; although no objects
in the WSDL are base64. They seem to be realtively new to SOAP.
My invocation produces a response. In my trace file, I can even see my
MIME node coming back. Then, my process fails with the following
exception from the trace.log:
System.Net Error: 0 : [6616] Exception in the
HttpWebRequest#16468652:: - The underlying connection was closed: An
unexpected error occurred on a receive.
The InputTrace.webinfo yields the corresponding message:
<inputMessage utc="11/26/2007 7:23:49 PM">
<processingStep description="Exception thrown: Unable to read data
from the transport connection: An existing connection was forcibly
closed by the remote host."> at System.Net.ConnectStream.Read(Byte[]
buffer, Int32 offset, Int32 size)
at Microsoft.Web.Services3.Mime.DelegatedStream.Read(Byte[] buffer,
Int32 offset, Int32 count)
at Microsoft.Web.Services3.Mime.BufferedReadStream.Read(Byte[]
buffer, Int32 offset, Int32 count)
at
Microsoft.Web.Services3.Mime.DelimittedStreamReader.Read(DelimittedReadStream
caller, Byte[] buffer, Int32 offset, Int32 count)
at
Microsoft.Web.Services3.Mime.DelimittedStreamReader.DelimittedReadStream.Read(Byte[]
buffer, Int32 offset, Int32 count)
at Microsoft.Web.Services3.Utilities.IOHelper.BlockRead(Stream
stream, Byte[] buffer, Int32 offset, Int32 count)
at
Microsoft.Web.Services3.Utilities.IOHelper.ReadIntoMemoryStream(Stream
stream)
at
Microsoft.Web.Services3.Mime.XopNodeData.GetBufferSafelyFromStream(Stream
stream)
at
Microsoft.Web.Services3.Mime.XopNodeData.ConvertContentsToBytes()
at
Microsoft.Web.Services3.Mime.XopNodeData.ConvertContentsToBytes()
at Microsoft.Web.Services3.Mime.XopNodeData.ConvertTo(DataType
typeDesired)
at Microsoft.Web.Services3.Mime.XopNodeData.GetString()
at Microsoft.Web.Services3.Mime.XopContentsNode.get_Data()
at System.Xml.XmlText.get_Value()
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportChildren(XmlNode fromNode, XmlNode
toNode, Boolean deep)
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportChildren(XmlNode fromNode, XmlNode
toNode, Boolean deep)
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportChildren(XmlNode fromNode, XmlNode
toNode, Boolean deep)
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportChildren(XmlNode fromNode, XmlNode
toNode, Boolean deep)
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportChildren(XmlNode fromNode, XmlNode
toNode, Boolean deep)
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportNode(XmlNode node, Boolean deep)
at Microsoft.Web.Services3.SoapFilter.CreateTraceEntry(Type
processor, String description, XmlNode content)
at
Microsoft.Web.Services3.Pipeline.ProcessInputMessage(SoapEnvelope
envelope)</processingStep>
</inputMessage>
The ResponseProcessingException.Response.Body.InnerText object
contains this:
- InnerText '((Microsoft.Web.Services3.ResponseProcessingException)
(ex)).Response.Body.InnerText' threw an exception of type
'System.NotSupportedException' string {System.NotSupportedException}
where base reports:
- base {"WSE2169: Read operation is not supported."}
System.SystemException {System.NotSupportedException}
Is this a permissions issue? I am stumped... If I can provide more
info, please outline what I forgot to include.
Thanks for reading!
SSL. One is a Windows Service that is working fine. It returns a list
of complexType objects which serialize fine.
I am using the same service endpoint on an ASP.Net application using
the same cert over SSL to invoke a different method that retrieves a
binary object through MTOM. Curiously, the vendor forced MTOM to be
required on the Windows services method as well; although no objects
in the WSDL are base64. They seem to be realtively new to SOAP.
My invocation produces a response. In my trace file, I can even see my
MIME node coming back. Then, my process fails with the following
exception from the trace.log:
System.Net Error: 0 : [6616] Exception in the
HttpWebRequest#16468652:: - The underlying connection was closed: An
unexpected error occurred on a receive.
The InputTrace.webinfo yields the corresponding message:
<inputMessage utc="11/26/2007 7:23:49 PM">
<processingStep description="Exception thrown: Unable to read data
from the transport connection: An existing connection was forcibly
closed by the remote host."> at System.Net.ConnectStream.Read(Byte[]
buffer, Int32 offset, Int32 size)
at Microsoft.Web.Services3.Mime.DelegatedStream.Read(Byte[] buffer,
Int32 offset, Int32 count)
at Microsoft.Web.Services3.Mime.BufferedReadStream.Read(Byte[]
buffer, Int32 offset, Int32 count)
at
Microsoft.Web.Services3.Mime.DelimittedStreamReader.Read(DelimittedReadStream
caller, Byte[] buffer, Int32 offset, Int32 count)
at
Microsoft.Web.Services3.Mime.DelimittedStreamReader.DelimittedReadStream.Read(Byte[]
buffer, Int32 offset, Int32 count)
at Microsoft.Web.Services3.Utilities.IOHelper.BlockRead(Stream
stream, Byte[] buffer, Int32 offset, Int32 count)
at
Microsoft.Web.Services3.Utilities.IOHelper.ReadIntoMemoryStream(Stream
stream)
at
Microsoft.Web.Services3.Mime.XopNodeData.GetBufferSafelyFromStream(Stream
stream)
at
Microsoft.Web.Services3.Mime.XopNodeData.ConvertContentsToBytes()
at
Microsoft.Web.Services3.Mime.XopNodeData.ConvertContentsToBytes()
at Microsoft.Web.Services3.Mime.XopNodeData.ConvertTo(DataType
typeDesired)
at Microsoft.Web.Services3.Mime.XopNodeData.GetString()
at Microsoft.Web.Services3.Mime.XopContentsNode.get_Data()
at System.Xml.XmlText.get_Value()
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportChildren(XmlNode fromNode, XmlNode
toNode, Boolean deep)
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportChildren(XmlNode fromNode, XmlNode
toNode, Boolean deep)
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportChildren(XmlNode fromNode, XmlNode
toNode, Boolean deep)
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportChildren(XmlNode fromNode, XmlNode
toNode, Boolean deep)
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportChildren(XmlNode fromNode, XmlNode
toNode, Boolean deep)
at System.Xml.XmlDocument.ImportNodeInternal(XmlNode node, Boolean
deep)
at System.Xml.XmlDocument.ImportNode(XmlNode node, Boolean deep)
at Microsoft.Web.Services3.SoapFilter.CreateTraceEntry(Type
processor, String description, XmlNode content)
at
Microsoft.Web.Services3.Pipeline.ProcessInputMessage(SoapEnvelope
envelope)</processingStep>
</inputMessage>
The ResponseProcessingException.Response.Body.InnerText object
contains this:
- InnerText '((Microsoft.Web.Services3.ResponseProcessingException)
(ex)).Response.Body.InnerText' threw an exception of type
'System.NotSupportedException' string {System.NotSupportedException}
where base reports:
- base {"WSE2169: Read operation is not supported."}
System.SystemException {System.NotSupportedException}
Is this a permissions issue? I am stumped... If I can provide more
info, please outline what I forgot to include.
Thanks for reading!