Posts

Showing posts from October, 2023

Error - Messages sent to SFTP location was getting into Active status

Issue: I was testing some files going into the SFTP location. However, due to some unknown reason, the transactions were staying in the Active status in BizTalk and were not getting processed. After multiple restarts, the transactions were finally processed. Root Cause: I had enabled numerous SFTP locations for my testing. Unfortunately, my host didn't have enough worker threads to connect to all these SFTP locations, as it only had 5 worker threads. To resolve the issue, I had to increase the worker threads to 50 in the host settings.

Error- The application does not exist.

 Error: Microsoft.XLANGs.Core.XTransformationFailureException: Error encountered while executing the transform XYZ Map. Error:Transformation failed. The application does not exist. . ---> System.Xml.Xsl.XslTransformException: An error occurred during a call to extension function 'ReadString'. See InnerException for a complete description of the error. ---> System.Runtime.InteropServices.COMException: The application does not exist. Issue: The SSO values were not added to the SSO DB. Adding the SSO values via BTDF fixed the issue.

Map changes not visible even after deploying the project via BizTalk

Error: I made a simple change to the map. I just hardcoded a couple of fields and deployed the solution to BizTalk. Then, I restarted the host instances. However, the map changes were not visible. Root cause: When I deployed it using BizTalk, it was not referencing/Gacing the DLL for some reason. I had to manually GAC the DLL, and after a host instance restart, the issue was fixed.

Error- Unable to build Orchestration project when everything appears fine

 Error: I was getting weird errors while trying to build an orchestration project. When I checked the code everything was alright. I spent a lot of time troubleshooting. Root cause: I had added this line of code in the catch block.  instanceId = System . Convert . ToString ( Microsoft . XLANGs . Core . Service . RootService . InstanceId ); In some cases, I had to add a space after the semicolon. In other cases,  I had to remove the space after the semicolon and I had to build the project and that worked. This issue was not easy to troubleshoot.

Error: Ensure that the message part data is initialized correctly. XPath expression

Error: Microsoft.XLANGs.RuntimeTypes.XPathUpdateException: A failure occurred while evaluating the property Order.Common.Schemas.PropertySchema.FileName against the message part data. The message part data does not contain at least one of the nodes specified by the XPath expression (listed below) that corresponds to the property. The cause for this error may be that the message part data has not been initialized or that the message part data does not conform to the message part schema. Ensure that the message part data is initialized correctly. XPath expression: /*[local-name()='SalesOrderCanonical' and namespace-uri()='http://Order.Common.Schemas.SalesOrderCanonical']/*[local-name()='SalesOrder' and namespace-uri()='']/*[local-name()='Header' and namespace-uri()='']/*[local-name()='FileName' and namespace-uri()='']    at Microsoft.XLANGs.Core.XSDPart.SetPayloadProperty(PropertyDefinition pd, Object val)    at EDI.GordonFo...

Message splitting using XML receive pipeline

Image
 Introduction In this blog, we will try to understand how we can split messages using an XML receive pipeline. Steps Create the schema for the split messages and also the envelope schema. Please follow the below steps Create a Racquet Schema in the project. Right Click on the Project --> Add --> New Item --> Schema Let us now create an envelope Schema named 'RacquetsEnvelope'. Right Click on the Project --> Add --> New Item --> Schema Name the root node 'Racquets' Click on Schema node , go to properties and set 'Envelope' to 'Yes'. Go to Imports --> Collections --> Add --> Add the 'Racquet' schema Click on 'Racquets' node and set Body Xpath to '/*[local-name()='Racquets' and namespace-uri()='http://POCSplitMessages.RacquetsEnvelope']' Right-click on the Racquets node and create a child record Click on the child record --> properties --> Data Structure type = ns0:Racquet (Reference) ...

Message splitting in an Orchestration

Image
 Introduction In this blog post, we will try to understand how we can split messages in an orchestration. Steps Let's create a new BizTalk solution and project named ' POCSplitMessages '. Configure the signing key and name the application ' POCSplitMessages ' Add references to the below dlls Microsoft.BizTalk.Pipeline --> get it from (C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.BizTalk.Pipeline\v4.0_3.0.1.0__31bf3856ad364e35\Microsoft.BizTalk.Pipeline.dll) Microsoft.XLANGs.Pipeline --> get it from(C:\Program Files (x86)\Microsoft BizTalk Server\Microsoft.XLANGs.Pipeline.dll) Create a Racquet Schema in that project. Right Click on the Project --> Add --> New Item --> Schema Let us now create an envelope Schema named 'RacquetsEnvelope'. Right Click on the Project --> Add --> New Item --> Schema Name the root node 'Racquets' Click on Schema node , go to properties and set 'Envelope' to 'Yes'. Go to Import...

Creating JSON schema using JSON schema wizard in BizTalk

Image
 Introduction Let us try to create a JSON schema in BizTalk using the sample JSON invoice given below. {     "invoiceNumber" : "INV2023-001" ,     "date" : "2023-10-01" ,     "dueDate" : "2023-10-15" ,     "customer" : {         "name" : "ABC Company" ,         "address" : "123 Main Street" ,         "city" : "Anytown" ,         "postalCode" : "12345" ,         "country" : "USA"     },     "items" : [         {             "description" : "Product A" ,             "quantity" : 5 ,             "unitPrice" : 10.99 ,             "total" : 54.95         },         {             "description" : "Product B" ,     ...