SharePoint 2013 and Biztalk 2013 (On-Premise)
For a couple of days we have been trying to connect our On-Premise SharePoint 2013 environment with our On-Premise BizTalk 2013 environment using the SharePoint adapter.
During this process we encountered several errors that I would like to share with you.
After configuring the SharePoint Adapter (you can read about it on MSDN here) and trying to send our first document we encountered the first error message:
The adapter failed to transmit message going to send port “SendPort-SP” with URL “wss://sharepointsite.com:80/sites/data/DropOffLibrary”. It will be retransmitted after the retry interval specified for this Send Port. Details:”The Windows SharePoint Services site was not found. The URL “http://sharepointsite.com:80/sites/data/DropOffLibrary” points to a SharePoint object for which there is no Windows SharePoint Services site.
Resolving this error is relatively easy. By enabling the “Windows Identity Framework” (WIF) within Windows Server 2012 this error will be resolved (Thanks Vincent Rouet).
The second error that we received look like this:
A message sent to adapter “Windows SharePoint Services” on send port “SharePoint” with URI “wsss://sharepointsite.com:80/sites/data/DropOffLibrary” is suspended.
Error details: [System.ServiceModel.CommunicationObjectFaultedException] The communication object, System.ServiceModel.Channels.ServiceChannel, cannot be used for communication because it is in the Faulted state.
Reading about this error concluded that this had to be some kind of security issue. We had filled in a domain user in the “SharePoint Online Password” and “SharePoint Online Username“ field of the adapter. When we changed the right properties to a Office 365 location using a Online login account everything seemed to be working fine.
Leaving the “SharePoint Online Password” and “SharePoint Online Username“ field of the adapter empty raised a security exception. After some logical thinking we figured out the the account running the host should have access to the SharePoint.
So what we did is creating a separate Host within BizTalk with a specific domain account and attach it to the SharePoint adapter. When you then leave the “SharePoint Online Password” and “SharePoint Online Username“ fields empty it will use the account that is specified for the host to add the documents to SharePoint.