本主题介绍如何使用 BizTalk Server 管理控制台或命令行将 BizTalk 应用程序导入 BizTalk 组。 导入 BizTalk 应用程序会注册 BizTalk 管理数据库中的项目,并将项目的数据写入相应的 BizTalk 数据库。 有关详细信息,请参阅 导入工件时会发生什么。 导入应用程序不会安装该应用程序。 必须先安装包含文件型工件的应用程序,然后才能运行。
当您使用 BizTalk Server 管理控制台导入一个应用程序时,从中启动导入 MSI 向导的位置会决定您是否可以在导入工件的同时创建一个新应用程序。 如果通过右键单击 BizTalk 组来启动向导,则必须提供应用程序名称。 如果 BizTalk 组中的现有应用程序具有指定的名称,则文件中的项目将导入到此应用程序中;否则,将创建具有指定名称的新应用程序,并将项目导入其中。 如果通过右键单击应用程序启动向导,则无法指定应用程序名称,项目将导入到当前应用程序中。
使用 BTSTask 命令行工具导入 .msi 文件时,提供应用程序名称是可选的。 如果未提供名称,则其项目将导入到默认应用程序中。
导入项目后,可以在 BizTalk Server 管理控制台中应用程序文件夹下的相应文件夹中查看它们。 还可以使用 BTSTask 查看应用程序中的项目列表,如 ListApp 命令中所述。
先决条件
若要导入 BizTalk 应用程序,必须使用属于 BizTalk Server 管理员组成员的帐户登录。 若要安装 BizTalk 应用程序,还必须对本地文件系统具有写入权限。 有关权限的详细信息,请参阅 部署和管理 BizTalk 应用程序所需的权限。
导入应用程序的注意事项
导入应用程序时,可能需要注意以下事项:
从旧版 BizTalk Server 导入应用程序。 如果要从 BizTalk Server 2006 R2 或 BizTalk Server 2009 导入应用程序,并且应用程序包含 EDI/AS2 方数据,则应用程序导入可能会失败,因为贸易合作伙伴管理模型在 BizTalk Server 中发生了很大变化。 必须改用 Party 迁移工具从以前的 BizTalk Server 版本迁移参与方数据。 有关该工具的详细信息,请参阅 EDI 迁移实用工具。
现有绑定始终被导入的绑定覆盖。 将包含绑定的 .msi 文件导入到现有应用程序中时,现有绑定将被具有相同名称的导入绑定覆盖。 即使在导入 .msi 文件时没有选择覆盖现有工件的选项,也确实如此。 如果不希望要导出的应用程序中的绑定覆盖要将 .msi 文件导入到的应用程序中的绑定,则不应选择绑定文件作为导出作期间要导出的资源。 有关详细信息,请参阅 如何导出 BizTalk 应用程序。
在导入过程中应用绑定时,已应用的绑定将被具有相同名称的新绑定覆盖。 换句话说,要应用的特定名称的最后一个绑定生效。 导入应用程序时,按以下顺序应用绑定:
由 BizTalk Server 生成的应用程序绑定未通过绑定文件显式添加到应用程序中,但用户已显式选择这些绑定导出到应用程序的 .msi 文件中。
已显式添加且未指定目标部署环境的绑定文件。 此集中的绑定不按特定顺序应用。
显式添加的绑定,并且具有与为应用程序导入选择的部署环境匹配的关联目标部署环境。 此集中的绑定不按特定顺序应用。
主机必须存在于组中。 与 .msi 文件中包含的应用程序绑定中指定的主机对应的主机必须已存在于 BizTalk 组中,否则导入作将失败。 此外,主机信任级别必须匹配。
可能需要添加对另一个应用程序的引用。 如果要导入的应用程序依赖于另一个应用程序中的项目,则需要添加对此应用程序的引用。 应用程序和所需的工件必须已存在于组中。 导入向导提供此选项。 但是,如果使用 BTSTask 的 ImportApp 命令,则必须在导入后添加对应用程序的引用,如 如何添加对另一应用程序的引用中所述。 有关背景信息,请参阅 依赖项和应用程序部署。 导入向导将匹配对组中现有应用程序的引用,并提供添加新引用或更改现有引用的选项。 你应该采取额外的步骤来验证引用的应用程序是否包含所需的构件。
如果导入操作超时,请将应用程序拆分成其他 .msi 文件。 如果导入操作的持续时间超过3600秒,导入操作将超时。 如果您尝试导入 .msi 文件,而操作超时,您应通过重新导出应用程序并选择导出部分工件,将应用程序的内容划分为多个 .msi 文件。 有关详细信息,请参阅 如何导出 BizTalk 应用程序。
重要
出于安全原因,在应用程序导出期间,将从应用程序绑定中删除密码。 但是,它们不会从添加到应用程序的任何绑定文件中删除。 导入应用程序后,需要重新配置密码,以便应用程序正常运行。 可以通过编辑绑定文件或使用管理控制台来执行此作。 有关编辑绑定文件的详细信息,请参阅 自定义绑定文件。 有关为适配器配置安全性的详细信息,请参阅 “使用适配器”。
注释
如果导入失败,BizTalk Server 将回滚所有导入操作,但自定义脚本执行的任何操作除外。
注释
如果在另一个应用程序中为使用属性架构的一个应用程序中的发送端口创建筛选器,然后将第一个应用程序导入到新的 BizTalk 组中,则不会收到有关架构缺失的警告,并且当安装并启动应用程序时,筛选将不起作用。 在安装不包含架构的应用程序之前,可以导入包含架构的应用程序来纠正该问题。
使用 BizTalk Server 管理导入 BizTalk 应用
依次单击“ 开始”、“ 所有程序”、“ Microsoft BizTalk Server 20xx”,然后单击 “BizTalk Server 管理”。
在控制台的树状视图中,展开 BizTalk Server 管理,展开 BizTalk 组,然后执行下列操作之一:
要将 .msi 文件中包含的应用程序和项目导入 BizTalk 组,请右键单击 “应用程序”,指向“ 导入”,然后单击 “MSI 文件”。
若要将 .msi 文件中包含的项目导入到现有应用程序中,请展开 “应用程序”,右键单击该应用程序,指向“ 导入”,然后单击 MSI 文件。
在“欢迎导入 MSI 向导”页上,在 要导入的 MSI 文件中,键入 .msi 文件的路径,然后单击“ 下一步”。 如有必要,可以通过单击 ... 按钮来浏览 .msi 文件。
在“应用程序设置”页上的“ 应用程序名称 ”下拉列表中,选择应用程序名称(如果可用)。 如果将应用程序导入 BizTalk 组,则可以使用该列表。
注释
该列表包括当前在 BizTalk 组中的所有应用程序的名称,以及从中导出 .msi 文件的应用程序的名称。 如果选择后一个应用程序名称,并且此 BizTalk 组中尚不存在该应用程序,则导入向导会创建新的应用程序。 如果选择组中已存在的应用程序,则导入向导会将 .msi 文件中的项目导入到现有应用程序中。
在 要向其添加引用的可用应用程序中,选择要向其添加引用的应用程序(如果有),然后单击“ 下一步”。
如果要将 .msi 文件导入到现有应用程序中,并且想要覆盖现有应用程序中的项目,请选择“ 覆盖资源”。
注释
如果未选择此选项,并且 .msi 文件包含应用程序中已存在的项目,则导入作将失败并回滚。 BizTalk 应用程序或组中的某些类型的项目必须是唯一的。 如果要添加的项目已在 BizTalk 组中存在,但当前应用程序中不存在,那么即使指定覆盖选项,导入操作也会失败。 有关哪些项目必须唯一以及它们必须唯一的方式的详细信息,请参阅 应用程序或组中必须唯一的项目。
在“应用程序目标环境设置”页上,在 “目标暂存环境 ”下拉列表中,选择此应用程序的目标环境,然后单击“ 下一步”。 此列表包含已为此应用程序添加的任何绑定文件指定的所有环境。 如果要在应用程序中应用除指定目标环境以外的所有绑定,请选择 <“默认值> ”。 如果 .msi 文件不包含要显式应用的绑定文件,则可以保留 <“默认> ”选项。
注释
将绑定文件添加到应用程序时,可以指定绑定的目标环境。 有关背景信息,请参阅 绑定文件和应用程序部署。 有关添加绑定文件的说明,请参阅 如何将绑定文件添加到应用程序。
在“导入摘要”页上,确认摘要信息正确,然后单击“ 导入”。
在“导入成功”页上,如果要在本地计算机上安装应用程序,请选择“ 运行应用程序安装向导”以在本地计算机上安装应用程序 复选框。
注释
除非需要在本地计算机上按当前配置运行应用程序,否则无需安装该应用程序。 但是,如果应用程序包含基于文件的组件,那么在应用程序开始运行之前,您必须在所有将运行该应用程序的计算机上安装它,因为导入应用程序只会将其添加到 BizTalk 管理数据库中。
单击“完成”。
注释
如果安装失败,例如由于在本地文件系统上没有写入权限,安装会被回滚,但导入操作不会回滚。
使用命令行导入 BizTalk 应用
按如下所示打开命令提示符:单击“ 开始”,单击“ 运行”,键入
cmd
,然后单击“ 确定”。键入以下命令,替换相应的值,如下表所述:
BTSTask ImportApp /Package:value [/Environment:value] [/ApplicationName:value] [/Overwrite] [/Server:value] [/Database:value]
示例:
BTSTask ImportApp /Package:“C:\MSI Files\MyApplication.msi” /Environment:Test /ApplicationName:MyApplication /Overwrite
参数 价值 /包 .msi 文件的完整路径。 如果路径包含空格,则必须用引号(“)将其括起来。 /环境 要应用的绑定文件的目标部署环境,例如测试。 这是将绑定文件添加到应用程序时为目标部署环境指定的值。 /ApplicationName 将 .msi 文件中的项目导入到的 BizTalk 应用程序的名称。 如果未指定,则使用导出 .msi 文件时指定的应用程序名称。 如果指定的应用程序不存在,则会创建它。 包含空格的应用程序名称必须用双引号()括起来。 /改写 在应用程序中使用.msi文件中具有相同本地唯一标识符(LUID)的工件替换工件的选项。 如果未指定此选项,并且应用程序中有一个或多个项目与 .msi 文件中的项目具有相同的 LUID,则导入将失败。 可以使用 ListApp 命令查看应用程序中项目的 LUID。 /服务器 托管 BizTalk 管理数据库的 SQL Server 实例的名称,格式为 ServerName\InstanceName,Port。
仅当实例名称不同于服务器名称时,才需要实例名称。 仅当 SQL Server 使用默认值(1433)以外的端口号时,才需要端口。
例子:
Server=MyServer
Server=MyServer\MySQLServer,1533
如果未提供,则使用本地计算机上运行的 SQL Server 实例的名称。/数据库 BizTalk 管理数据库的名称。 如果未指定,将使用在本地 SQL Server 实例中运行的 BizTalk 管理数据库。