Things hard and not so hard.... RSS 2.0
# Monday, November 02, 2009

Well – after spending *far* too long trying to get a little Red X to disappear from my BTS Configuration tool, so I can have a green light to configure the SharePoint adapter, I thought “There’s got to be an easier way”

image
Exhibit A – your honour. The SharePoint Adapter Configured.

So – what I did was roll my sleeves up and do this by hand.

This particular install – BTS09 x86, I installed WSS V3.0 with Sp2 and created a local sharepoint web application, site collection and had a whole bunch of SharePoint happiness coming back to me on http://biztalk (my server name).

All good I thought – except the configuration tool didn’t like what it found. I looked at logs, ran network sniffers and even manually ran the tool  Microsoft.BizTalk.KwTpm.StsOmInterop3.exe http://biztalk with success:

image

But still no joy in the configurator.

Here’s how to do it manually:

  1. Setup your local or domain SharePoint Groups
    Typically this is the ‘SharePoint Enabled Hosts’ Group – if it already exists on the domain, then great, if not create it. For this I created my group on the local machine.
    I also added as members, my biztalk service account and my Sharepoint Service Account.
  2. Configure IIS – BTS SharePoint WS Web Application
    1. Within the BizTalk Installed folders – e.g. c:\program files\Microsoft BizTalk 2009\Business Activity Services, you’ll find the set of WebServices to choose from. Select the right one for your SharePoint deployment.
    2. image
    3. As you can see I selected BTSharePointV3AdapterWS (for WSS V2 SP3, select BTSharePointAdapterWS).
    4. This is the folder you will point IIS to later.
    5. Open this folder and you’ll see a web application with a web.config.tmpl
    6. Copy the web.config.tmpl and rename the *copy* to web.config
    7. Open up your Web.Config in Notepad and configure as follows:

        <?xml version="1.0" encoding="utf-8"?>
        <configuration>
          <system.web>
                <httpModules>
                    <!--add name="UrlAuthorization" type="System.Web.Security.UrlAuthorizationModule" /-->
                </httpModules>

            <!-- Change debug="true" if you want to debug this web service -->
            <compilation defaultLanguage="c#" debug="false" />
            <customErrors mode="Off" />
            <!-- Windows Authentication is required for this web service. -->
            <authentication mode="Windows" />
            <!-- Impersonation is required for this web service. -->
            <identity impersonate="true" />
            <authorization>
                <allow roles="SharePoint Enabled Hosts" verbs="GET,HEAD,POST"/>
                <deny users="*"/>
            </authorization>

            <!-- Uncomment this block if you want to do some tracing of this web service -->
            <!-- <trace enabled="true" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />  -->
            <globalization requestEncoding="utf-8" responseEncoding="utf-8" />

            <!-- The size of a document being posted to SharePoint depends on this setting -->
            <httpRuntime maxRequestLength="100000" />
            <trust level="Full" originUrl="" />
          </system.web>
          <runtime>
            <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
              <dependentAssembly>
                <assemblyIdentity name="Microsoft.SharePoint" publicKeyToken="71e9bce111e9429c"/>
                <bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0"/>
              </dependentAssembly>
            </assemblyBinding>
          </runtime>
        </configuration>

      1. (you can always go back and tighten security up on this when you’ve got it working).
      2. Note the ‘SharePoint Enabled Hosts’ – local group here.
      3. I’ve also removed the ‘Documentation’ tags so I could get some WSDL to make sure it works within the browser.
      4. Save your web.config within Notepad.
      5. NOTE: make note of the Folder Path to get here as we’ll need it in IIS next.
    8. Configuring IIS
      1. Bring up IIS Admin MMC snapin.
      2. Select your SharePoint enabled Web Site, I selected ‘Default Web Site’. Right click when ‘Default Web Site’ is Selected and select ‘Add Application’
        image
        note: IIS 7.0 Manager shown.
      3. Configure this as follows:
        image
        (Note – the App Pool User should be able to post into BizTalk and SharePoint)
        Physical Path: <path you had previously to either V2 or V3 of your BTSharePointV3Adapter…>
      4. Click OK.
      5. To Test your WS: browse to: http://<your server>/BTSharePointAdapterWS/BTSharePointAdapterWS.asmx
      6. You *should* get this:
        image
        You can invoke the IsAlive function and get TRUE back.
      7. If not, then fix your IIS related errors, at this point you’ve got a WS that uses the SharePoint APIs (locally). Some things to check:
        1. Local file security – make sure the Web App Pool acct can access those directories.
        2. Windows Auth is turned on, on your Web App.
        3. Check IIS log files for clues.
      8. You’re done on the IIS side of things, let’s configure BTS Side.
  3. Configuring BizTalk Side
    Fortunately the WSS Adapter is installed as part of the BizTalk Runtime configuration – it’s just not configured. So as far as registering the adapter with BizTalk it’s already been partly done.
    1. Install the “I’ve been Configured Registry Keys” – I took these from a previously successful 2009 install.
    2. Once the registry keys have been applied you’ll need to go and configure the …\TPM key to reflect your setup as follows:
      1. In Particular – configure your SharePoint SiteID to the one you saw in IIS.
      2. image
  4. How is this Different for a x64 bit Install
    1. The IIS piece is the same.
    2. The BTS Piece – the Perf counters are the same,
      but the ..\TPM piece is under HKLM\SOFTWARE\WOW6432Node\Microsoft\BizTalk Server\3.0\ConfigFramework
    3. So you’ll need to ammend 1 of the above 2 REG files.

You’re done!

Why oh why is this so hard from within the Configurator.

NOTE: There *USED* to be a Registry key that told the BTS WSS Adapter where to go looking for the BTSharePoint WS – a URL (..STSServiceUrl). This eliminated the need for a local machine install of SharePoint/WSS. Alas…this is *NOT* the case with WSS Adapter post BTS06.


Monday, November 02, 2009 9:02:11 PM (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
BizTalk | 2009 | SharePoint | MOSS | 2010
Archive
<November 2009>
SunMonTueWedThuFriSat
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345
Blogroll
 AppFabric CAT
AppFabric Windows Server Customer Advisory Team - New Blog.
[Feed] BizTalk 2006 - Windows SharePoint Services adapter
BizTalk 2006 Sharepoint adapter!!
 Breeze SharePoint 2010 Bootcamp
Breeze SharePoint 2010 Bootcamp
[Feed] BTS 2006 R2/EDI
[Feed] Chris Vidotto (MS BTS Legend)
Needs no intro....
 Mark Daunt
BTS/SPS/.NET GURU!!!
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2014
Breeze
Sign In
Statistics
Total Posts: 606
This Year: 10
This Month: 0
This Week: 0
Comments: 270
All Content © 2014, Breeze