注:此博客帖子是基于SharePoint2010技术预览版本。
MOSS 2007
假设您有一个网站集Web Application1 ,在工作中您创建了一系列的内容类型。现在,又创建了一个Web Application2 。并且需要重用在Web Application 1中创建的内容类型。然而,没有现成的方法可以在Web Application1 与 Web Application2之间共享或引用这些内容类型。唯一的办法是编写一个应用程序来安装这些内容类型。这种场景在一些大型组织中非常常见。由此还可以引申为在服务器场中跨多个网站集来共享一些基础的内容类型。下图描述了上述问题:
SharePoint 2010
在SharePoint2010 中现在引入了一个叫做内容类型集线器(Content Type Hub)新特性。通过内容类型集线器您可以集中管理和发布内容类型。因此,现在Web应用程序可以订阅到该集线器,把该集线器发布的内容类型拉(pull)下来。更加令人惊喜的是,还可以接收到内容类型的更新信息!
正如上图所示,通过MDS(Metadata Service Application) 将内容类型集线器暴露每个Web应用程序。这样,只要相应的Web应用程序都使用同一个MDS,所有发布的内容类型都能推送的到。
配置内容类型集线器
整个过程十分简单。
1) 创建一个Web应用程序并创建出网站集根站点,用来宿主内容类型集线器。
2) 进入 Managed Metadata Service (位于 管理中心 | 应用程序管理| 管理服务应用程序)的属性对话框中< /p>
找到设置内容类型集线器的地方:
这一步后台执行的操作包括激活宿主站点的Feature:
3) 进入 Managed Metadata Service 连接(同样位于 管理中心 | 应用程序管理| 管理服务应用程序)的属性对话框中,我们需要指定集线器可用于提供内容类型。
4) 现在,我们可以进入我们刚刚创建的内容类型集线器网站集根站点,开始创建内容类型。这里可以看到多出了一项“管理此内容类型的发布”。
5) 同样选发布。
6)确定后将发布该内容类型。
计时器作业(Timer Jobs)
为了能立刻接收到发布的内容类型,我们最好手工运行这两个计时器作业。
1) 内容类型集线器
2) 内容类型订户 (对应于想要接收内容类型发布的Web应用程序)
已发布的内容类型
当运行完计时器作业后,如果没有错误的话,内容类型应该已经被发布了。我们可以进入接收内容类型的Web应用程序网站集的网站设置|网站集管理|内容类型发布页面查看所有已发布的内容类型:)
这时,我们已经可以在该网站中使用该内容类型了。比如,在文档库可用内容类型中添加该内容类型:
注意,只要使用该内容类型集线器对应的该Web应用程序就可以接收到该集线器发布的内容类型。
Web应用程序的MDS连接在很多地方可以指定,其中最常见的是在新建Web应用程序页面上(在编辑连接组中选择 默认 或 自定义):
相当巧妙,相当有意义的一个新特性,感谢SharePoint team!