Question

Pretty basic question I think, but I'm kind of at a loss.

I'm trying to do some Biztalk->Sharepoint integration. Eventually I'll be moving to dynamic ports etc. but right now all I'm trying to do is add an item to a list in sharepoint. I have a personal site on the company intranet where I have "Full control".

The list has two columns, and my schema has two elements. Very similar to this blog. I'm pretty sure it's the right structure.

I've gone to my biztalk host (BiztalkServerApplication) and made it use my Logon: "domain\username". This is the same logon that has "full permission" on my sharepoint site. When I don't use this account and try to set it in the adapter instead, I get a "System.ServiceModel.CommunicationObjectFaultedException"... I've kind of gone off of this link for help in terms of providing my credentials to this Host Instance.

Now I'm getting a "Access denied. You do not have permission..." Error when I try to send this list message! (From a file if that matters).

I'm at a loss here. My host instance has my domain credentials. I'm (nearly) positive they're identical to what's on the host site. I don't know what I'm doing wrong because it seems like I'm following everything perfectly to the letter from what I've found on the internet. Though there's hardly anything when it comes to using the BT2013 Sharepoint Adapter. What are common mistakes that people make with this adapter? I don't feel like I should have to go to our Systems guys to change something on the sharepoint site.

Any and all help appreciated!

Was it helpful?

Solution 2

Looks like long story short what I THOUGHT was a list was in fact not a list. I was trying to add an element to something that looked and acted exactly like every other SP list but wasn't one which is what produced the permissions error. Awesome.

I opened up InfoPath and created a new list on my "personal" sharepoint, then targeted that with my Biztalk Sharepoint adapter with hardcoded values for the columns. After dropping in a message, it worked correctly.

For more useful information see @lantrix 's reply to this question.

OTHER TIPS

You don't mention what version of SharePoint you are using. There are limitations on the version of SharePoint you can interact with using the new BizTalk 2013 adapter with Client Side Object Model (CSOM). The CSOM only allows you to interact with SharePoint services on SP2010, SP2013 and SharePoint Online. It's even more limited with CSOM disabled - this means you would be using Service Side Object Model (SSOM) and you are limited to only SharePoint 2010.

The BizTalk 2013 SharePoint Services Adapter using CSOM requires you install Windows Identity Foundation, or turn it on as a feature, depending on which version of the OS you are running the BizTalk Server.

Ensure you've correctly setup a proper receive location as well as the send port (be it static or dynamic): http://msdn.microsoft.com/en-us/library/jj735586(v=bts.80).aspx

If you've chosen to disable CSOM on the SharePoint Adapter, you would have had to install a service on the server hosting SharePoint (assuming it's different to the BizTalk Server). In this case you need to ensure the IIS apppool hosting that server uses a domain account. In this scenario (with CSOM disabled) you can also get access denied issues if you have a double hop. If there are three computers involved (BizTalk Server, SharePoint Services and SQL Server) and you haven't enabled kerberos/setspn (on the domain accounts for SQL and the AppPool account hosting the sharepoint service) then you will have authentication issues. You can determine this by checking the IIS logs. You would see in your IIS logs a failed status code, eg. 401.2, followed by a 401.1, following by another 4xx error.

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