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:
- 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.
- Manually create simple message schemas As asked here I created the schema for the simple request and response messages not auto-generated.
- 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...?