使用BizTalk Server 2009提供的Sharepoint Adapter连接Sharepoing 2010 与 不通过安装介质安装Sharepoint Adapter

本文也是经过反复挣扎才完成的。在好同事兼好上级的王亨利(目前levelup为亨总)的一再,不遗余力的坚持鄙视和胁迫下,我只好写了本文。好吧,我很懒,我承认。感谢亨总的鞭策。  恩,与诸君共勉。 OTZ

我们有可能碰到两个情况:
1. BizTalk Server 2009提供的Sharepoint Adapter是不支持Sharepoint 2010的。
2. 有些时候没有合适的安装介质,由于版本等关系,但我们必须安装并使用Sharepoint Adapter。

我们需要进行如下操作,才能实现对Sharepoint的连接。

在Sharepoint2010上建立BizTalk Sharepoint Adapte需要以下几个步骤。
0. 首先要求你的BizTalk Server服务是配置在域账户下的。
0

1. 找一台Sharepoint 2007安装一个BizTalk Sharepoint Adapter,安装方法前面介绍过。
2. 到IIS中找到安装所生成的IIS应用程序。应用程序名称默认为“BTSharePointAdaterWS”。
1

3. 把应用程序对应目录的文件全部拷贝。
2
3

4. 在Sharepoint2010所在服务器上,找到想要连接的站点,并在IIS中的该站点下,建立应用程序,名称为“BTSharePointAdaterWS”。将文件复制入该应用程序指向的目录。
5 

注意:
将该应用程序的应用程序池的账户,设置为Sharepoint 2010服务器所使用的应用程序池

1

5. 在Sharepoint 2010所在域中,或在Sharepoint 2010所在电脑中,建立用户组,组名为:“Sharepoint Enabled Hosts”。如果是域中,为”域名\Sharepoint Enabled Hosts”,如果是计算机,则为”计算机名\Sharepoint Enabled Hosts”。注意,用自己的域名和计算机名,替换。
4 

注意:
在该账户组中,加入BizTalk服务配置时使用的域账户

 3

6. 编辑步骤3中所拷贝文件中的”Web.config”文件。
找到节点:<authorization>
把内容替换为:
<authorization>
        <allow roles="域名\SharePoint Enabled Hosts" verbs="GET,HEAD,POST" />
        <deny users="*" />
</authorization>

注意:
"域名\SharePoint Enabled Hosts" 这个就是我们在前面建立的用户组,如果是本机组,就填写”计算机名\Sharepoint Enabled Hosts”,如果是域就填写"域名\SharePoint Enabled Hosts" 。

再找到
<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>
修改为:
<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.SharePoint" publicKeyToken="71e9bce111e9429c" />
        <bindingRedirect oldVersion="11.0.0.0" newVersion="14.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

注意:
此步骤只有要使用Sharepoint 2010时才使用。

7. 从BizTalk Server 2009安装的服务器的GAC中,提取BizTalk Server运行所需的DLL,安装至Sharepoint 2010所在服务器。
首先是BizTalk Server的GAC->c:\windows\assembly
6

有些人不知道如何提取GAC中的DLL。反方如下:
打开控制台,进入目录:c:\windows\assembly。浏览目录,就能看到多个文件夹。按照你的DLL的版本,进入相应目录,就可以把DLL拷贝出来了。
7

拷贝出了DLL,在把DLL注册到Sharepoint 2010服务器即可。
在我的试验中,我拷贝了以下DLL:
Microsoft.BizTalk.KwTpm.OfficeImporters2
Microsoft.BizTalk.KwTpm.OfficeImporters2.resources
Microsoft.BizTalk.KwTpm.StsOminterop
Microsoft.BizTalk.KwTpm.StsOmInterop.resources
Microsoft.BizTalk.KwTpm.WssAdapter.Validator
Microsoft.BizTalk.KwTpm.WssAdapter.Validator.Resources
Microsoft.BizTalk.MUI
Microsoft.BizTalk.Tracing
将以上DLL注册到Sharepoint 2010的服务器的GAC中。
8

8. 从Sharepoint 2010服务器上的IIS中打开Web Service服务,调用服务“IsAlive”,检验返回结果,确认是否安装成功。
9

10

11

12
看到true了吗,看到了,就成功了。

如果成功了,那么OK。如果不成功,寻找相关问题,解决之。
如果报错服务器500了,并且看不到报错信息,可以采用如下方法:
1. 打开IE设置,找到 高级 选项卡。
2. 反选“显示友好 HTTP错误信息”。
3. 回到页面就可以看到错误提示了。

今天就到这里。

欢迎大家讨论。完全原创,转帖请务必注明出处。

posted on 2010-08-16 21:27  史维  阅读(364)  评论(0编辑  收藏  举报

导航