BizTalk Accelerator for RosettaNet 疑难解答(BTARN):问题和解决方法

本主题解决了与运行 Microsoft® BizTalk Accelerator for RosettaNet (BTARN) 相关的问题。 各个问题详细说明了特定症状、可能的原因和解决方案。

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

症状

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

消息传送引擎遇到错误,将一批“n”消息发布到传输适配器“BizTalk HTTP 接收器”的 Message Box 数据库。 有关此失败的更多详细信息,请参阅运行状况和活动跟踪工具,并检查是否已正确配置终结点绑定。

可能的原因

此错误可能是由以下原因之一引起的:

  • 缺少解密证书

  • 未正确加密的消息

  • 未经授权的消息(消息源未确认为有效合作伙伴)

  • 任何标头部件的消息验证失败:前言、传递标头或服务标头。

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

解决方案

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

无法将所有工件取消注册

症状

运行 BTARNClean 实用工具不会取消注册所有工件。

可能的原因

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

解决方案

使用 Loopback 工具删除杂散效应
  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 文件手动复制到系统文件夹。

尝试更改 BTARN 配置时收到访问错误

症状

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

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

更改配置(如创建新的合作伙伴)时,您也可能收到此错误。

可能的原因

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

解决方案

确保当前用户是 BizTalk 管理员组的成员。

收到 BAM 错误

症状

事件查看器中收到以下错误消息:

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

-或-

终止 ID 号为<ID number>的 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.

可能的原因

BizTalk Server Internet Server API (ISAPI) 扩展 DLL (BTSHttpReceive.dll) 尚未在 Internet Information Services (IIS) 中配置。 如果没有配置 HwsMessages HttpReceive Web 服务扩展,或者配置了此 Web 服务扩展但未启用,则会出现这种情况。

解决方案

若要确定是否配置了 HwsMessages HttpReceive web 服务扩展,并在未配置的情况下允许其执行,请执行以下过程。

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

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

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

    如果未配置 HwsMessages HttpReceive Web 服务扩展(IIS 管理器中的 Web 服务扩展列表中不包含该扩展),请执行以下步骤。

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

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

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

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

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

运行配置向导时发生访问冲突

症状

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

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

可能的原因

若要运行配置向导,应将用户配置为“计算机名称>\hostsvc”<,而不是“\hostsvc”。

解决方案

打开 BizTalk 管理控制台,并更改在帐户“\hostsvc”下运行的主机,使其在帐户“计算机名称>\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 ServerSQL 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 中的 hosts 文件包含将 localhost 主机名映射到 IP 地址 127.0.0.1 的条目。 配置程序可能会将此值与环回地址混淆,并假定计算机未正确连接到网络。

解决方案

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

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

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

  4. 配置成功完成后,在记事本中重新打开 hosts 文件,删除行映射 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:服务不可用

可能的原因

此错误可能是由于在 IIS 网站上设置的 ISAPI 筛选器(标识为 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 <版本> Accelerator for RosettaNet\SDK\HubScenario 中运行 setup.bat 以设置 HubScenario 示例时,操作失败。

可能的原因

HubScenario 和 HubHelper 程序集未正确部署,因为未在项目中设置程序集密钥文件。

解决方案

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

在 SQL Server 2008 R2/2008 SP1 上运行 setupx64.bat 来设置双重操作 PIPAutomation 编排样本。

症状

运行 setup.bat 生成和初始化 Double Action PIPAutomation 业务流程示例时,不会创建 BTARNData 数据库中的 PipAutomationGetAction 存储过程。

可能的原因

在 64 位计算机上或在 SQL Server 2008 R2/2008 SP1 上运行的 BizTalk Server 安装上运行 setup.bat。 这两个实例都需要运行 setupx64.bat。

解决方案

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

在 64 位的 Windows Server 2008 操作系统上,为 BTARN 应用程序池启用 32 位版本功能。

若要在 Windows Server 2008、64 位 Windows 操作系统(OS)上运行 BTARN 端到端场景,需要使用 Internet Information Services Manager 7.5/7.0。

  1. 将 BTARN 应用程序池启用为 32 位模式。

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

另请参阅

BtarnClean
环回