Question

I've been attempting to get a BizTalk orchestration connecting to an external axis2 web service for a couple of days with various issues.

The steps I've taken are:

  1. Generated schema for service The Add Generated Items -> Consume WCF Service threw a null exception so I had to use the .NET 2.0 Add Web-reference to generate xsd and an odx.
  2. Manually create simple message schemas As asked here I created the schema for the simple request and response messages not auto-generated.
  3. Set up port I've tried WCF-Custom, WCF-BasicHttp and Http

I always get the below message when attempting to receive the response:

Inner exception: Invalid envelope namespace

Exception type: SoapException
Source: Microsoft.XLANGs.BizTalk.Engine
Target Site: System.Web.Services.Protocols.SoapException ReadSoapException(System.Xml.XmlReader)
The following is a stack trace that identifies the location where the exception occured

   at Microsoft.BizTalk.ExceptionUtil.ReadSoapException(XmlReader reader)
   at Microsoft.BizTalk.XLANGs.BTXEngine.SoapExceptionMsg.SoapExceptionFormatter.Deserialize(XLANGMessage msg, Stream stm)
   at Microsoft.BizTalk.XLANGs.BTXEngine.SoapExceptionMsg.get_TheException()
   at Microsoft.BizTalk.XLANGs.BTXEngine.BTXLogicalPortBinding.VerifyMessage(Envelope env, String typeName, Context cxt, OperationInfo op)
   at Microsoft.BizTalk.XLANGs.BTXEngine.BTXPortBase.VerifyTransport(Envelope env, Int32 operationId, Context ctx)

The service throws SOAP exceptions but the messages (tested via browser and Fiddler) do not get returned with a SOAP envelope wrapper.

The other oddity is that in Fiddler the messages include some strange characters in the body. In most instances:

70
{expected message}
0

Are my issues due to:

  • The service configuration
  • The way I have set up the adapters -where have I specified that the response is expected to be within a SOAP envelope?
  • The manual addition of the response schema. If this is incorrect how do I get the web message types deployed?
  • Those unexpected characters - I tried the AutoResponder function of Fiddler with the characters removed but I get an IO exception (connection closed)
  • Other...?
Was it helpful?

Solution

It turns out that I was testing using the Http endpoint instead of the SOAP endpoint. Doh!

I now have other problems (here and here) with choosing which binding to use with SOAP 1.1 or 1.2 and empty envelopes.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top