Wss Adapter questions
These are some of the questions raised by early users of the WSS adapter. I assumed that people didn't want to see their names listed here, so I took the liberty and removed all the names and also rephrased some of the questions.
Q: What are the differences between the WSS adapter in 2006 which is available out of the box, and the WSS adapter for 2004 which could be downloaded from gotdotnet?
A: See my previous blog entry https://blogs.msdn.com/ahamza/archive/2005/07/27/443823.aspx At some point I will follow up in the blog with a detailed comparison of each feature.
Q: Can you use WSS adapter to archive Word/Excel docs contained in a SharePoint document libraries?
A: Yes, the new WSS Adapter can handle binary documents including Word/Excel docs. Just make sure that you: 1) use Passthrough pipelines on receive locations and send ports, and 2) you set Office Integration property to "No" on send ports and receive locations. Use CBR instead of an orchestration, it's much easier to make a mistake from an orchestration if you are using binary messages.
Q: Why would you use one pipeline over the other when using the WSS adapter?
A: Each pipeline has its own capabilities and features. The adapter does not care what pipeline is used, you will use one pipeline over the other based on the pipeline functionality that you need or don't need.
- XmlPipeline - knows to search for the appropriate XSD schema that matches the incoming/outoging XML document and it will suspend the message if no matching XSD schema is found (corrected August 03 - validation of the XML message against the XSD schema does not happen automatically, you will need a custom pipeline for that) . It also knows to add/remove PI, handle different types of message encodings, etc. This pipeline will validate the message and reject any invalid or unkown message. Using this pipeline with binary messages (non-xml) will cause the messages to be suspended. The pipeline settings can be changed to alter some of these characteristics.
- Passthrough - this pipeline does NOT validate messages, it does not look for an XML schema, etc. This is the pipeline that you want to use with binary messages (or any message that can not be understood by BizTalk) like Word docs, PDF files, etc.
Q: The adapter "Windows SharePoint Services" raised an error message. Details "The request failed with HTTP status 401: Unauthorized." How can I fix this?
A: WSS Adapter runtime is hosted in a BizTalk host instance and it runs under the identity of the host instance. As a result the account for this host instance needs permissions to invoke the BTSharePointAdapterWS adapter web service as well as permissions to create/delete/update files in SharePoint.
Resolution:
1.Go to your SharePoint site, probably https://<MACHINENAME>/sites/<SiteName> or https://<MACHINENAME>/
Go to Site Settings
Go to Site Administration
Click on Manage site groups
Click on Contributors
Add Members...
Add <MACHINENAME>\Sharepoint Enabled Hosts
2. Now from Administrative Tools -> Computer Management, add <MACHINENAME>\<BTSHostUser> account to "Sharepoint Enabled Hosts" group
3. Restart BizTalk host instance from the Admin MMC
Q: I added the host instance account to SharePoint Enabled Hosts and I still get 401 access denied error. Is there anything else I need to do?
A: Restart the host instance process using BizTalk Administration Console.
Q: How to install BTSharePointAdapterWS.asmx web service?
A: BTSharePointAdapterWS is in fact the Wss Adapter web service. This is installed by Windows SharePoint Services Adapter Web Service feature under Additional Software (in Setup). This feature's configuration settings are under the "SharePoint Adapter" node in the BizTalk Server Configuration tool.
Q: I have installed WSS SP2, I upgraded IIS sites to ASP.NET 2.0 but BAS and WSS Adapter Web Service features are still disabled/grayed out. What am I missing?
A: If you have done all of the above and you still cannot install BAS or WSS Adapter features then the WSS language does not match the BizTalk language. You need to install the language pack for WSS ( https://www.microsoft.com/downloads/details.aspx?FamilyID=E7EEC77D-4365-4B66-8E8D-9D079C509679&displaylang=en ) in order for BizTalk and WSS to use the same language.
Anonymous
August 30, 2005
Any Idea how you would set up a dynamic port in an orchestration.
I had everything working with CBR but was not satisfied with the filename.
I want to use the Receivedfilename so I have to use an orchestration.
Any ID ?Anonymous
August 30, 2005
My guess is that you are asking about GotDotNet adapter. The BT'06 native WSS adapter preserves the original filename by default so you don't need to do anything and you don't need an orchestration either.
GotDotNet adapter v2 property WSSLibVB.ReceivedFileName will return you the original filename. You will use the msg(WSSLibVB.ReceivedFileName) to get the original filename and use it on the URI of the send port like this
DynPortName(Microsoft.XLANGs.BaseTypes.Address)="uri of send port";
Create a physical send port from UI and look at the send port properties to see how you should builg the URI.Anonymous
March 16, 2006
How can I poll a document library residing on a sharepoint site on a different/remote server/domain? The tutorials/examples you have in the videos deals with WSS document libraies on the same server. I tried to do this without any luck...
I keep getting that the following error:
"The Windows SharePoint Services adapter runtime does not have permissions to invoke the adapter Web service. In order to fix this issue, you have to add the 'BTS2006DEVBTSUser' Windows account to the "SharePoint Enabled Hosts" Windows group on the Windows SharePoint Services machine. This operation will allow BizTalk host instances running under 'BTS2006DEVBTSUser' Windows account to invoke the adapter Web service in order to send and receive messages to or from SharePoint sites. The group membership will not take effect until you restart the BizTalk host instance."
Do I need permissions on the 'Remote' machine as well? Do you have any suggestions?Anonymous
March 16, 2006
Yes, you will needd to add BTS2006DEVBTSUser account to the remote SharePoint Enabled Hosts group, and also make SharePoint Enabled Hosts group a Contributor in SharePoint. Because WSS adapter supports only integrated authentication, you will not be able to use an account from the 2nd domain to authenticate. You might need to setup a trust relationship between your two domains in order to be able to see the accounts from BTS2006DEV domain in your second domain. Most likely this trust relationship does not have to be symetrical (only one domain needs to trust the other domain) but even when you setup an asymetrical trust relationship you still need to change the configuration of both domains. It's been quite a while since I've setup a trust relationship between domains, so my knowledge in this area is pretty rusty. Here's a link to get you started http://www.windowsitpro.com/Windows/Article/ArticleID/3868/3868.html
I would love to keep in touch and hear from you if and how you got this to work and if you run into other issues once you've setup the trust between domains.Anonymous
May 22, 2006
The comment has been removedAnonymous
May 22, 2006
The comment has been removedAnonymous
May 23, 2006
The comment has been removedAnonymous
May 23, 2006
The comment has been removedAnonymous
June 11, 2006
I'm in the following situation:
There are multiple pdf-documents that I have to pick up using the file-adapter und that I need to transmit to a WSS-document Library. I'm using CBR to process this task with BizTalk 2006.
Everything works fine, but I need to retain the original filename. Where do I get this it from to set it in the according property of the WSS adapter.Anonymous
June 12, 2006
You will need to use a simple orchestration that gets the filename from the original file and sets it in outgoing message. Construct outgoing msg from received msg like this:
wssMsg = fileMsg;
wssMsg(WSS.Filename) = fileMsg(FILE.ReceivedFileName);
Make sure your orchestration send port sends the wssMsg.
Update WSS physical send port so that the Filename field is empty (so that it does not overide the value defined in the orchestration - this behavior is supported only by WSS adapter).Anonymous
November 24, 2006
I've just upgraded Sharepoint Services to Technical refresh...and now BizTalk 2006 sharepiint adapter keeps reporting errors about the SharePoint Enabled Hosts. I can confirm that it exists and has been allocated as a contributor to the site. Do I need another config file for the updated release?Anonymous
November 25, 2006
Did you upgrade to WSS v3? If yes, then take a look at this post http://blogs.msdn.com/ahamza/archive/2006/06/05/WSS-v3-Beta-2-Wss-Adapter-Workaround.aspxAnonymous
March 06, 2007
The comment has been removedAnonymous
June 11, 2007
Can somebody confirm whether MS supports a cross domain setup for BizTalk and WSS (i.e. BizTalk servers are in a separate domain from WSS servers)?Cheers,BenAnonymous
June 11, 2007
As a follow on from my last question - would using the GotDotNet Sharepoint Adapter enable cross-domain communication between BTS and WSS?I noticed that one of the features of the GotDotNet adapter is "Username/Password in SSO per endpoint" (GotDotNet adapter supports Username/password properties stored in SSO in order to connect to the WSS using other credentials than the host credentials. BizTalk native adapter supports only integrated authentication/NTLM). Has anyone tried this?BenAnonymous
June 11, 2007
As far as I know, cross-domain communication is NOT supported.You might be able to get it to work through one of these mechanisms:a) setup domain trust between domainsorb) by running the BizTalk host under a local account and then create the same local account with the same username & password on the remote WSS machine(s).However, b) is probably not supported, I don't know about a).GotDotNet SharePoint adapter does allow you to specify a username and password, I don't know if somebody has tried to use it across multiple domains.Anonymous
June 11, 2007
Thanks Adrian. Do you know if MS supports having both the BizTalk and GotDotNet Sharepoint adapters installed side-by-side?Anonymous
June 12, 2007
Not supported officially but they should work side by side without any problems.Anonymous
August 20, 2007
Hi,I want am working in MOSS2007 and BizTalk 2006.I want to put all the InfoPath2007 documents from a folder on directory to SharePoint portal.For that, I have created a Forms library and an orchstration whose send port adapter is Windows SharePoint Adapter.Send portgives an error as follows:Event Type: WarningEvent Source: BizTalk Server 2006Event Category: BizTalk Server 2006Event ID: 5743Date: 8/21/2007Time: 11:59:36 AMUser: N/AComputer: ITL-HJW-22215Description:The adapter failed to transmit message going to send port "SendToPortal" with URL "wss://itl-hjw-22215:2222/personal/supriyapushpadant_k/InfopathLoad". It will be retransmitted after the retry interval specified for this Send Port. Details:"The Windows SharePoint Services adapter Web service was not found at the specified URL, "http://itl-hjw-22215/BTSharePointAdapterWS/BTSharePointAdapterWS.asmx". The Windows SharePoint Services adapter Web service feature is required to be installed and configured on machine itl-hjw-22215. If the feature has been installed and configured, then verify that Adapter Web Service Port and SharePoint Site URL settings on the BizTalk port are correct.This error was triggered by the Windows SharePoint Services receive location or send port with URI wss://itl-hjw-22215:2222/personal/supriyapushpadant_k/InfopathLoad.Windows SharePoint Services adapter event ID: 12461".For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.aspSharePoint Adapetr Web sevice is installed and configured on my machine. As per my knowledge port settings are also right.I am not able to remove this error.Can you plz help me?Anonymous
August 21, 2007
I see that you specified port 2222. The default HTTP port is port 80, did you configure the adapter web service on an IIS web site that's listening on port 2222? If yes, what are the host names for your IIS web site where you configured the web service?Anonymous
March 09, 2008
I receive an XML document containing the name of a document & the name of SharePoint library in which it resides. My task is to move that document to another SharePoint library.I know that I can create a dynamic port to store the document. However, how can I select documents from a SharePoint library based on the document name variable?Please help - is this a job for SharePoint instead of Biztalk?Anonymous
March 10, 2008
I'm not sure if this is a pure Sharepoint task or it can be done with BizTalk. You haven't provided enough details for me to figure that out. I can point you in a few directions though to help you make a decision. For receiving documents based on SharePoint document name (and other SharePoint properties) you can use SharePoint views. A BizTalk WSS receive location can specify a SharePoint 'View name' and only documents that are visible in that SharePoint view will be retrieved and processed by BizTalk. You can create custom views in SharePoint, try to create such a custom SharePoint view that shows only the documents you want to be processed and specify that view name in the BizTalk receive location. In the receive location, you can also specify where the WSS document being received should be archived. That works if your documents are always archived in the same location. If the location differs (based on the document properties) then you probably need a dynamic send port. Let me know if this answers your questions. Thanks!Anonymous
April 29, 2008
I tried the steps outline for the 401 errors, but I am still getting them. I have not found any other resources that mention this error, so hopefully someone is still monitoring this blog after such a long time.ThanksmikeAnonymous
April 29, 2008
Hi Mike,You need to give me a little bit more data in order for me to help you. What did you try to do to solve the problem? What were the results/errors/etc? Can you login under your BizTalk account and see if you can upload/delete messages in SharePoint? etc.AdrianAnonymous
April 29, 2008
Thanks for the quick response. I am using BizTalk, and every 15 minutes I get 3 entries into my weblog that the ShaprePoint Adapter (/BTSharePointAdapterWS/BTSharePointAdapterWS.asmx) is trying to POST something, and is getting 401 2 2148074254 error first, then 401 1 0, then a 200 0 0. On the last try it seems like the cs(User-Agent) value is populated, but is not on the first two tries. Sorry, I am new to this, and I do not know exactly what I have enabled, or what the adapter is even trying to do. What I did was verify that Add <MACHINENAME>Sharepoint Enabled Hostswas added to my MOSS BAS site, and that the admin user that I am on the machine as, was in that group. Then I restarted the BT Host. ThanksAnonymous
April 29, 2008
On the BizTalk machine, are there any errors related to SharePoint adapter in the application event log? It seems to me that you are looking at the IIS logs. A 401 in the IIS log is not necessarily an error. Normal NTLM authentication will cause your IIS log to contain pairs of "401 Access Denied" and "200 OK" HTTP status codes. That's how NTLM authentication works. If I'm correct, what you are seeing is just SharePoint adapter runtime authenticating with the SharePoint adapter web service. If you have a WSS receive location created, the adapter is regularly polling the web service to see if there are any new messages on the SharePoint site.Anonymous
April 29, 2008
Nothing in the App Log, only in the web log. So I have to deal with this showing up in the Web Log every 15 minutes? This just seems to clog up my web log, but if you do not think it is causing any issues I guess I may have to deal with it. thanksmikeAnonymous
April 29, 2008
Any web request will show up in the IIS web log including the WSS adapter web requests and the requests coming from the users of the SharePoint site. It shouldn't be a big deal or take up a lot of space although over a long time it can amount to a lot of disk space. You can probably check the IIS documentation to see what are the best practices for managing the IIS logs.Anonymous
May 18, 2008
I am trying to install the WSS Adapater Web Service on a WSS 3.0 server. The installationg goes fine, but the configuration tool keeps wanting to skip configuration of the service because the group 'SharePoint Enabled Hosts' does not exist.The WSS host machine is also a domain controller, which means I can't (or don't know how to) create a local group - yet if I create a domain local, or global, group it is not recognized by the BTS Configuration tool.Any suggestions?Many Thanks,ChrisAnonymous
May 19, 2008
Hmm, this is a strange one. It seems you might be running into some setup bug. I would follow up with support and also ask this question on one of the BizTalk newsgroups.Anonymous
May 21, 2008
Try to ask this question on the BizTalk 2006 R2 Adapters forumhttp://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=1471&SiteID=1Anonymous
February 16, 2009
I have the following error. I have configured the SharePoint services adapter in BizTalk Configuration. But still the error occurs. Why? Event Type: Warning Event Source: BizTalk Server 2006 Event Category: BizTalk Server 2006 Event ID: 5743 Date: 2/17/2009 Time: 4:04:28 PM User: N/A Computer: BIZTALK Description: The adapter failed to transmit message going to send port "TestForCrown_ConvertSchema4 Send Port" with URL "wss://biztalk:8080/sites/MOSS/doclib/HRInfoIn". It will be retransmitted after the retry interval specified for this Send Port. Details:"The Windows SharePoint Services adapter Web service was not found at the specified URL, "http://biztalk/BTSharePointAdapterWS/BTSharePointAdapterWS.asmx". The Windows SharePoint Services adapter Web service feature is required to be installed and configured on machine biztalk. If the feature has been installed and configured, then verify that Adapter Web Service Port and SharePoint Site URL settings on the BizTalk port are correct. This error was triggered by the Windows SharePoint Services receive location or send port with URI wss://biztalk:8080/sites/MOSS/doclib/HRInfoIn. Windows SharePoint Services adapter event ID: 12461". For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.Anonymous
February 17, 2009
Like the error says, you need to install and configure the 'Windows SharePoint Services adapter Web service' BizTalk feature (found under Additional Software) on the SharePoint machine which in your case seems to be named 'biztalk'.Anonymous
March 06, 2009
I got the following exception when trying to send xml message to a sharepoint forms libraryThe Windows SharePoint Services adapter Web service encountered an access-denied error accessing site http://mysite:81/ErrorForms/. The BizTalk host instance account requires Contributor-level permissions. To fix this issue, you need to add the BizTalk host instance account domainNameuserName to the SharePoint Enabled Hosts group and make this group a member of the Contributors role in SharePoint. The group membership will not take effect until you restart the BizTalk host instance.I verified I have the domainNameuserName added in the Sharepoint enabled hosts group, and this group is a member of the Contributors role on the sharepoint site, I also restart the biztalk host instance, anything else I need verify?Thanks a lot,XiaobingAnonymous
March 06, 2009
Try hitting the BTSharePointAdapterWS web service using the same credentials as the BizTalk host. Try browsing and editing documents on the SharePoint site using the same credentials as the BizTalk host. See if any of that fails.Anonymous
March 25, 2009
Hello! I need to configure WSS adapter on SharePoint server in other domain(and it is impossible to configure trusts). I know that adapter needs an windows authentication, but maybe there are some "cheets" to avoid it? Or maybe you can give me some advices how to try to do that.Thank you!Anonymous
April 06, 2009
The comment has been removedAnonymous
April 21, 2009
Is it possible to configure WSS adapter webservice with multiple sharepoint sites on the same server?What if I want to store documents to multiple document libraries across different sites?Appreciate your inputs or suggestions.Anonymous
April 21, 2009
Yes, it's possible. The SharePoint site URL is part of the receive location/send port configuration. You just need to make sure that the BizTalk host account is a Contributor in all of the SharePoint sites you are using.Anonymous
July 29, 2009
Hi,I am new to BizTalk world.I am trying to distribute MOSS 2007 content between various sharepoint farm using BizTalk 2009 WCFBasicHttp + orchestration + WSS adapter.For a POC, I have created two custom list 'A' and 'B' on team site on same farm. And I want to test any new content to custom list 'A' distribute same to 'B'.I have created ItemAdded eventhandler for custom list 'A'. And I have hosted BizTalk orchestration as WCF Service (WCFBasicHttp adapter). Custom List 'A' event handler will hand over sharepoint list content to orchestration. Then orchestration process data and handover content to WSS adapter which in turn insert new item to Custom list 'B'.Everything works fine except 'user identity'. Means, new item on Custom list 'A' shows created by '<Domain>UserName' where in custom list 'B' shown created by <System account>. I know this is because BizTalk process runs with system account and with this credential it will insert new record in Custom list 'B'. Question is how can I impersonate user credential? I have found there is IN/PROMOTED property called "InCreatedBy" that may help me. But I don’t know how to use it.Sorry for the long post. :)Anonymous
July 29, 2009
Instead of trying to impersonate the user (which would require impersonating a different user for each document) I would add my own CreatedBy column in SharePoint and set the value of that column to be the value extracted from the InCreatedBy promoted property.Anonymous
July 29, 2009
I did not get your answer actually. I can not change metadata of custom list B. Both list are identical. Moreover, I have to maintain sharepoint authorization and authentication (sharepoint security trimming).Bigger picture of my POC is; I would like to synchronize two DataCenter each datacenter has own sharepoint farm. So if user hit any data center he/she get same sharepoint content (security trimmed). I am not sure this is best way. But I am exploring available ways, and stuck with 'UserIdentity'.Anonymous
July 29, 2009
This is probably not the way to go, WSS adapter was not designed for this scenario, you might be able to get it to work, but probably there are better ways or tools to do this. Unfortunately I cannot point you to such a tool, ask this question on one of the sites linked to the left under 'SharePoint Bloggers' category.Anonymous
July 29, 2009
Thanks Adrian for your quick response. I will ask in 'Sharepoin Bloggers'. Thanks.Anonymous
January 18, 2010
We are trying to use WSS Adapter from BizTalk 2006 (not R2) and MOSS 2007. We are getting following error "The adapter failed to transmit message going to send port"Snd_To_Sharepoint".Details:"[System.Security.SecurityException] Failure decoding embeddedpermission set object." What could be the problem?Anonymous
January 21, 2010
If I remember correctly, using WSS Adapter from BizTalk 2006 (not R2) and MOSS 2007 is not supported. I think BizTalk 2006 R2 adds support for MOSS 2007.