none
The start element with name "" and namespace "" was unexpected. Please ensure that your input XML conforms to the schema for the operation. RRS feed

  • Question

  • This is the error I am getting when sending the XML message to SQL database.

    The adapter failed to transmit message going to send port "CS.CVM.Send.FGVDataLoad.MQ.CVM" with URL "mssql://SVRT0000860F:1433/SVRT0000860F/CVM". It will be retransmitted after the retry interval specified for this Send Port. Details:"Microsoft.ServiceModel.Channels.Common.XmlReaderParsingException: The start element with name "ServiceEnvelope" and namespace "" was unexpected. Please ensure that your input XML conforms to the schema for the operation.

    For Receive Location, Using File adapter and custom pipleline "FGVFeedProcessor.btp" which will set custom Target Namespace into XML message.

    Send port, using WCF-custom adapter and set the URI as:

    mssql://SVRT0000860F:1433/SVRT0000860F/CVM

    SOAP Action header;

    <BtsActionMapping xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

      <Operation Name="usp_InsertFGVDetails" Action="Procedure/DM/usp_InsertFGVDetails" />

    </BtsActionMapping>

    Here is my custom pipleline "FGVFeedProcessor.btp"


    Please help me to resolve this error. Any help is appreciated.


    Shailja Tiwari

    Friday, October 14, 2016 5:11 PM

Answers

All replies

  • Hi,

    It looks like the request XML is not as per the SQL schema, have you validated your request against schema?

    looks like namespace issue, check your actual request(You can get that from the suspended message and see if it has blank name space for root node). 


    Regards Pushpendra Singh : Please mark the reply as answer or vote it up, as deemed fit.


    Friday, October 14, 2016 5:13 PM
  • Yes I have validated the schema against Request XML and it is successful as expected.


    Shailja Tiwari

    Friday, October 14, 2016 5:16 PM
  • Hi,

    In your Error: The start element with name "ServiceEnvelope" and namespace "" , this bank name space is having me concerned, do you think can you share your request and schema?


    Regards Pushpendra Singh : Please mark the reply as answer or vote it up, as deemed fit.

    Friday, October 14, 2016 5:23 PM
  • I am not able to share the Request and Schema.

    Thanks,

    Shailja T


    Shailja Tiwari

    Friday, October 14, 2016 5:36 PM
  • Well, you don't really need to share anything yet.  Basically, you are getting the error because the message sent to the SQL Adapter is not a SQL Adapter Message Type.

    Are you missing a Map somewhere?  One the Send Port, Orchestration Transform Shape?

    If that Request message comes from somewhere else, you have to map it to a SQL Adapter Schema.

    Friday, October 14, 2016 6:46 PM
  • I will add more details here.

    I have generated the Target schema using Add->Generated Items-> Consume adapter service based on Stored proc we are using to insert the data into Database. I have created the map as well with request and target schema and configured it in send port.

    I am not using Orchestration.

    Thanks,

    Shailja T


    Shailja Tiwari

    Friday, October 14, 2016 7:02 PM
  • Does the Receive Location use a Pipeline with The XmlDisassembler?

    The most common cause of what you describe is the Map not executing because the message's Type does not resolve.

    Friday, October 14, 2016 7:06 PM
  • There is no XmlDisassembler in Receive pipeline.

    Thanks,

    Shailja T


    Shailja Tiwari

    Friday, October 14, 2016 7:12 PM
  • If it is related with Map execution, how can I resolve it?

    Any suggestion.

    Thanks,

    Shailja T


    Shailja Tiwari

    Friday, October 14, 2016 7:17 PM
  • For a Send Port Map to work without an Orchestration, you have to use the XmlDisassmbler Pipeline Component on the Receive Locations.

    The XmlDisassembler is what sets the Type which is how the Send Port Map is resolved.  Without the Type, no Map will match so no map will be applied.

    Friday, October 14, 2016 7:17 PM
  • Thanks John, I will try this to add XmlDisassembler. is there any specific property I need to set for XmlDisassembler?

    Thanks,

    Shailja T


    Shailja Tiwari

    Friday, October 14, 2016 7:29 PM
  • Immediately, you can use the default XmlReceive Pipeline on the Receive Port.

    However, it's best to use Custom Pipelines and specific Document Types as described here: http://social.technet.microsoft.com/wiki/contents/articles/35656.biztalk-improve-deployment-and-tracking-by-always-creating-custom-pipelines.aspx

    • Proposed as answer by Angie Xu Monday, October 24, 2016 2:39 AM
    • Marked as answer by Angie Xu Monday, October 24, 2016 2:39 AM
    Friday, October 14, 2016 7:36 PM