BizTalk Accelerator for RosettaNet (BTARN) 故障排除:问题和解决方法

本主题解决与运行 Microsoft® BizTalk Accelerator for RosettaNet (BTARN) 相关的问题。 每个问题都详细描述了一种特定的症状、其可能的原因以及解决方案。

发布一批(“n”条)消息时出错

症状

在事件日志中接收到以下或类似的错误:

消息引擎向传输适配器“BizTalk HTTP Receiver”的 MessageBox 数据库发布包含“n”条消息的批时遇到了错误。 请使用运行状况与活动跟踪工具来了解有关此故障的详细信息,并检查是否正确配置了终结点绑定。

可能的原因

此错误可能由以下某个原因引起:

  • 缺少解密证书

  • 未正确加密消息

  • 未经授权的消息(未将源识别为有效的合作伙伴)

  • 消息未能通过对任意标头部分(前导头、传递头或服务头)的验证。

    此消息之前可能有另一个详细说明原因的错误消息。

解决方案

请查看随错误消息提供的详细信息,以获取其他帮助。 重启 Microsoft SQL Server ™ 可能会解决此问题。

无法取消登记所有项目

症状

运行 BTARNClean 实用工具不会取消列出所有项目。

可能的原因

如果在从 Microsoft® 管理控制台中删除协议和合作伙伴之前运行 BTARNClean 实用工具, (MMC) ,BtarnClean 实用工具将无法取消列出所有项目,因为它们仍在使用。

解决方案

使用环回实用工具删除项目
  1. 在命令提示符处,键入:

    lookback.exe /disable <home org or partner>  
    
  2. 运行 BtarnClean.exe 文件。

  3. 在 BizTalk 浏览器中,删除参与方。

在未安装 BizTalk Server 的计算机上安装 BTARN 会导致文件丢失

症状

运行 ConfigFramework.exe 文件不会在未安装 MicrosoftBizTalk Server 或 Microsoft Visual Studio 的计算机上生成任何结果。 只能将此 BTARN 配置用作 HTTP 客户端。

可能的原因

安装过程中缺少两个 DLL 文件。

解决方案

在计算机上安装 SQLXML,然后手动将 Msxml4.dll 和 Atl71.dll 文件复制到 System 文件夹。

试图更改 BTARN 配置时出现访问错误

症状

使用 BTARN 管理控制台导入配置文件时,会收到以下错误消息:

无法将发送端口“RNSTT.Async”的主传输的传输类型数据存储到配置存储。 访问被拒绝。

在试图通过如创建新的合作伙伴等操作来更改配置时,也可能会出现此错误。

可能的原因

当前用户不是 BizTalk Administrators 组的成员。

解决方案

确保当前用户为 BizTalk Administrators 组的成员。

出现 BAM 错误

症状

事件查看器中出现以下错误消息:

跟踪消息活动时出错。 错误消息为“存储过程不存在”。

-或-

使用 ID 号终止 BAM 消息活动时出错>。<

可能的原因

未安装业务活动监视 (BAM) 跟踪工具。

解决方案

使用 “自定义安装 ”选项安装 BAM 跟踪工具。 如果不需要 BAM 功能,可以使用 BTARN 管理控制台忽略这些消息或禁用跟踪。 禁用跟踪后,必须重启 BizTalk Server,Internet 和信息服务 (IIS) 。

XSD 架构在 BizTalk 编辑器中显示不正确

症状

无法在 BizTalk 编辑器中正确查看架构的内容。

可能的原因

架构缺少 displayroot_reference 元素的 schemaInfo 属性。

解决方案

在记事本或其他文本编辑器中打开架构,并将 displayroot_reference 属性添加到 schemaInfo 元素。 特性的值 displayroot_reference 应与 特性相同 root_reference

例如:

<schemaInfo document_type="4A1" version="V02_00" xmlns="<http://schemas.microsoft.com/BizTalk/2003>" displayroot_reference="Pip4A1StrategicForecastNotification" root_reference="Pip4A1StrategicForecastNotification" \>  

发送 HTTP 请求时出现“404 找不到”错误

症状

发送 HTTP 请求时收到以下或类似的错误:

远程服务器返回错误:(404) 找不到。

无法将消息发送到 ../BTSHttpReceive.dll。

可能的原因

尚未在 Internet Information Services (IIS) 中配置 BizTalk Server Internet Server API (ISAPI) 扩展 DLL (BTSHttpReceive.dll) 。 如果未配置 HwsMessages HttpReceive Web Services 扩展或配置了此 Web Services 扩展但不允许使用它,则发生此错误。

解决方案

若要确定是否配置了 HwsMessages HttpReceive Web Services 扩展,以及在配置后如何允许使用它,请执行以下过程。

在 IIS 中配置 BizTalk ISAPI 扩展 DLL
  1. 单击“开始” ,指向“管理工具” ,然后单击“Internet Information Services (IIS)管理器”

  2. 展开<计算机名称> (本地计算机) ,然后单击 Web 服务扩展

  3. 在“ Web 服务扩展 ”窗格中,验证 HwsMessages HttpReceive 的状态是否为“允许”。 如果没有,请右键单击“ HwsMessages HttpReceive”,然后单击“ 允许”。

    如果未配置 HwsMessages HttpReceive Web Services 扩展(它没有包含在 IIS 管理器的“Web Services 扩展”列表中),则请执行以下过程。

在 IIS 中配置 BizTalk ISAPI 扩展 DLL
  1. 单击“开始” ,指向“管理工具” ,然后单击“Internet Information Services (IIS)管理器”

  2. 展开<计算机名称> (本地计算机) ,右键单击“Web 服务扩展”,然后单击“添加新的 Web 服务扩展”。

  3. 在“ 新建 Web 服务扩展 ”对话框的“ 扩展名称 ”框中,键入 BizTalk ISAPI 扩展,然后单击“ 添加”。

  4. 在“添加文件”对话框的“文件路径”框中,键入 <drive>:\Program Files\Microsoft BizTalk Server <version>\HttpReceive\BTSHttpReceive.dll,然后单击“确定”。

  5. “新建 Web 服务扩展 ”对话框中,选择“ 将扩展状态设置为允许”,然后单击“ 确定”。

运行配置向导时出现访问冲突

症状

在事件日志中接收到以下或类似的错误:

使用用户帐户“\HostSvc”配置的 BizTalk 独立主机实例要么未运行,要么在此计算机上不存在。 请使用 BizTalk 管理控制台新建一个独立主机,或者重新配置一个现有主机,使其以“\hostsvc”的身份运行。

可能的原因

若要运行配置向导,应将用户配置为“machine name>\hostsvc”<,而不是“\hostsvc”。

解决方案

打开 BizTalk 管理控制台,更改在帐户“\hostsvc”下运行的主机,使其在帐户“machine name>\hostsvc”<下运行。

导入和编译 RosettaNet 下一代 PIP 架构时出现错误

症状

在事件日志中接收到以下或类似的错误:

错误 CS0234:类或命名空间“RosettaNet.Schemas.System”中不存在类型名或命名空间名“SerializableAttribute”(是否缺少程序集引用?)。

可能的原因

其中一个架构(例如 StandardDocumentHeader.xsd)具有 RosettaNet.Schemas.System 的 .NET 命名空间。

解决方案

从架构的 .NET 命名空间中删除“System”,使命名空间为 RosettaNet.Schemas。

试图手动部署 BAM 软件包时出现错误

症状

手动尝试为 BTARN 部署 BAM 包时,会收到一条错误,指示无法部署该包。

可能的原因

系统上所安装的 DTS 软件包 BAM_DM_Process 和 BAM_DM_Message 妨碍了 BAM 软件包的部署。

解决方案

从错误情况中恢复并部署 BAM 软件包
  1. 单击“开始”,指向“所有程序”,指向“Microsoft SQL Server”,然后单击“企业管理器”。

  2. 在 Enterprise Manager 中,展开“Microsoft SQL Server”、“SQL Server组”、“ (本地) (Windows NT) ”和“数据转换服务”。

  3. 单击“ 本地包”,右键单击 “BAM_DM_Message”,然后单击“ 删除”。

  4. 右键单击 “BAM_DM_Process”,然后单击“ 删除”。

  5. 单击 “开始”,单击“ 运行”,键入 cmd,然后单击“ 确定”。

  6. 在命令提示符下,键入以下代码以部署跟踪文件,然后单击“ 确定”。

    cd %ProgramFiles%\Microsoft BizTalk Server <version>\Tracking  
    bm deploy all  "%ProgramFiles%\Microsoft BizTalk <version> Accelerator for RosettaNet\BAMTracking\tracking.xml"  
    

添加新的 PIP 时出现错误

症状

在事件日志中接收到以下或类似的错误:

UNP.SCON.VALERR:验证服务内容时出错。

详细信息:按消息类型查找文档规范失败。 请验证已正确部署架构。

可能的原因

实例 Pip4A5NotifyofForecastReply 的已部署架构的文档命名空间或根节点属性不正确。

解决方案

请验证实例 Pip4A5NotifyofForecastReply 的已部署架构的文档命名空间和根节点属性正确。

安装时配置 BTARN 的过程中出错,这是由假设存在的网络连接问题造成的

症状

在配置过程中,错误对话框中出现一个错误,指出计算机与网络的连接不正确,而实际上连接正确。

可能的原因

此错误可能是由 BTARN 配置程序错误解释 IP 地址引起的。 C:\Windows\system32\drivers\etc 下的主机文件中包含一个将 localhost 主机名映射为 IP 地址 127.0.0.1 的条目。 配置程序可能将这个值与环回地址相混淆,因而假定计算机与网络的连接不正确。

解决方案

避免此错误并完成配置过程
  1. 在 Windows 资源管理器中,移动到 C:\Windows\system32\drivers\etc,并使用记事本打开 hosts 文件。

  2. 通过在行的开头放置“#”,注释掉行“127.0.0.1 localhost”。 保存更改过的主机文件。

  3. 在错误对话框中单击“ 重试 ”。

  4. 配置成功完成后,重新在记事本中打开主机文件,删除映射 localhost 的行前的注释标记,然后保存主机文件。

出现指出签名长度不正确的错误

症状

在事件日志中接收到以下或类似的错误:

执行接收管道时失败:“Microsoft.Solutions.BTARN.Pipelines.Receive”源:“MIME/SMIME 解码器”接收位置:“/BTARNHttpReceive/BTSHTTPReceive.dll?xRNResponseType=async”原因:签名长度不正确,值 = 1935897193。

可能的原因

此错误消息指出,签名长度不正确。 除了上述原因以外,不正确或不完整的头内容长度会导致签名长度的字节读数错误,这也可能造成此错误。

解决方案

请验证签名长度和头内容长度正确。

在 64 位计算机上从 Internet Explorer 收到“503:服务不可用”

症状

完成 BTARN 配置后,尝试访问 http://localhosthttp://localhost/BtarnApp/RnifSend.aspx时,可能会收到以下或类似错误:

503:服务不可用

可能的原因

此错误可能是由 ISAPI 筛选器造成的,该筛选器可在 IIS 网站上设置的 C:\windows\system32\rpcproxy\rpcproxy.dll 下找到。

解决方案

删除 IIS 中的 RpcProxy 筛选器条目
  1. 单击“开始” ,指向“管理工具” ,然后单击“Internet Information Services (IIS)管理器”

  2. 展开<计算机名称> (本地计算机) ,右键单击“网站”,然后单击“属性”。

  3. 选择“ ISAPI 筛选器 ”选项卡。

  4. 选择“ RpcProxy 筛选器”,然后单击“ 删除”。

  5. 单击 “确定”

  6. 单击 “开始”,单击“ 运行”,键入 cmd,然后单击“ 确定”。

  7. 在命令提示符处,键入以下代码,以重置 IIS。

    iisreset  
    

注意

如果在执行上述步骤后尝试访问 http://localhost 或 http://localhost/BtarnApp/RnifSend.aspx 再次访问,将收到来自 Internet Explorer 的 HTTP 400 消息,这意味着 IIS 现在正常运行。

如果没有为项目输入程序集密钥文件,则 HubScenario 示例将无法正确安装

症状

在 drive:\Program Files\Microsoft BizTalk <version> Accelerator for RosettaNet\SDK\HubScenario 中<运行 setup.bat 以设置 HubScenario 示例时,操作将失败。>

可能的原因

由于项目中没有设置程序集密钥文件,HubScenario 和 HubHelper 程序集没有正确部署。

解决方案

为 HubScenario 和 HubHelper 项目设置程序集密钥文件。 有关详细信息,请参阅 HubScenario 示例

在 SQL Server 2008 R2/2008 SP1 上运行 setupx64.bat 设置“双操作 PIPAutomation 业务流程”示例

症状

当你运行 setup.bat 以生成和初始化“双操作 PIPAutomation 业务流程”示例时,BTARNData 数据库中未创建 PipAutomationGetAction 存储过程。

可能的原因

在 64 位计算机上或在 SQL Server 2008 R2/2008 SP1 上运行的BizTalk Server安装上运行了 setup.bat。 这两种情况要求你运行 setupx64.bat。

解决方案

运行 setupx64.bat 以创建该存储过程。 有关详细信息,请参阅 双操作 PIPAutomation Orchestration

为 Windows Server 2008(64 位 Windows 操作系统 (OS))上的 32 位程序启用 BTARN 应用程序池

要在 Windows Server 2008(64 位 Windows 操作系统 (OS))、Internet 信息服务管理器 7.5/7.0 上运行 BTARN 端对端方案:

  1. 启用 32 位程序的 BTARN 应用程序池。

  2. 为引用 IsapiModule 筛选器的 *.dll 添加 HTTP 处理程序。

另请参阅

BtarnClean
Loopback