排查 Oracle E-Business Suite 适配器的安装问题
Microsoft BizTalk 适配器包的安装将复制计算机上的产品二进制文件,并为每个适配器注册绑定。 本部分讨论使用故障排除技术解决安装错误。
安装操作的日志记录消息
BizTalk 适配器包安装程序执行安装 BizTalk 适配器包的标准任务。 此外,安装程序还会执行某些自定义操作,例如注册适配器绑定。 可以记录安装程序执行的标准和自定义操作的消息。
BizTalk 适配器包安装程序使用 MSI 安装特定于适配器的文件。 因此,安装程序的日志记录是标准 MSI 日志记录。 Windows 安装程序日志记录 提供了更多详细信息。
安装程序执行的自定义操作的所有日志在 %TEMP%\adaptersetup.log 中可用。 如果对日志文件的跟踪失败,则事件日志中也提供跟踪。
已知问题
以下是安装 BizTalk 适配器包时可能遇到的最常见错误,以及其可能的原因和解决方法。
安装程序无法注册适配器绑定
问题
Microsoft BizTalk 适配器包安装向导无法注册适配器绑定,但继续安装适配器。
原因
这可能是由于 Windows Communication Foundation (WCF) 安装、Microsoft Windows Communication Foundation (WCF) 业务线 (LOB) 适配器 SDK 安装或 machine.config 文件损坏而导致的。 适配器绑定将写入 machine.config 文件。
解决方法
应手动注册 Oracle 电子商务适配器绑定。
注册适配器绑定
导航到计算机上的 machine.config 文件。 例如,在 32 位平台上,machine.config 在系统驱动器>:\WINDOWS\Microsoft.NET\Framework\<version>\CONFIG 下<可用。
在此路径中,<版本>是.NET Framework的版本。
使用文本编辑器打开文件。
注册 Oracle 电子商务适配器绑定:
搜索元素“system.serviceModel”,并在其下添加以下内容:
<client> <endpoint binding="oracleEBSBinding" contract="IMetadataExchange" name="oracleebs" /> </client>
在 system.serviceModel\extensions 下搜索元素“bindingElementExtensions”。
查找缺少的 Oracle 电子商务适配器绑定。 在“bindingElementExtensions”节点下添加以下部分。
对于 Oracle 电子商务适配器,请添加:
<add name="oracleEBSAdapter" type="Microsoft.Adapters.OracleEBS.OracleEBSBindingElementExtensionElement, Microsoft.Adapters.OracleEBS, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />
在 system.serviceModel\extensions 下搜索元素“bindingExtensions”。
查找缺少的 Oracle 电子商务适配器绑定。 在“bindingExtensions”节点下添加以下部分。
对于 Oracle 电子商务适配器,请添加:
<add name="oracleEBSBinding" type="Microsoft.Adapters.OracleEBS.OracleEBSBindingCollectionElement, Microsoft.Adapters.OracleEBS, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />
注意
有关如何确定公钥和版本的信息,请参阅 确定公钥和版本。
保存并关闭 machine.config 文件。
确定公钥和版本
执行以下步骤来确定 Oracle 电子商务适配器的公钥。
确定公钥
导航到 Windows 目录,通常为 C:\WINDOWS\assembly。
右键单击需要其公钥和版本的 DLL,然后选择“属性”。 下表列出了 Oracle 电子商务适配器的 DLL 的名称。
适配器 DLL 的名称 Oracle E-Business 适配器 Microsoft.Adapters.OracleEBS 在“ 常规 ”选项卡上,针对 “公钥令牌” 标签的值指定 DLL 的公钥。 同样, 针对版本 标签的值指定 DLL 的版本号。
复制公钥,然后单击“ 取消”。
在 64 位安装上使用适配器服务加载项或添加适配器服务引用插件时出错
问题
在运行 64 位版本的 BizTalk 适配器包的 64 位计算机上,使用“添加适配器服务参考”Visual Studio 插件或使用适配器服务 BizTalk 项目外接程序会导致以下错误:
No valid adapters are installed on this machine
原因
Oracle E-Business 适配器是 WCF 自定义绑定,在 machine.config 文件中的 System.ServiceModel 下注册。 64 位平台有两个 machine.config 文件,一个由 32 位应用程序使用,另一个由 64 位应用程序使用。 因此,安装 64 位版本的 BizTalk 适配器包时,安装向导会在 64 位版本的 machine.config 文件中注册绑定。 但是,Visual Studio 作为 32 位进程运行,因此当你从 Visual Studio 启动“使用适配器服务加载项”时,插件会检查 32 位版本的 machine.config 文件中的绑定,但无法显示错误。
解决方法
在 64 位 WCF LOB 适配器 SDK 安装上安装 32 位和 64 位版本的 BizTalk 适配器包。
重要
只能安装 64 位 WCF LOB 适配器 SDK。 不支持在单台计算机上并行安装 32 位和 64 位 WCF LOB 适配器 SDK。
使用修补程序集 11.1.0.7 安装适用于 Oracle 客户端 11.1.0.6 的 32 位和 64 位版本的 Oracle 数据访问组件。
注意
若要确保应用程序适用于最新版本的 ODP.NET,必须在计算机上安装“策略 DLL”并在 GAC 中注册。 有关详细信息,请参阅 中的 https://go.microsoft.com/fwlink/p/?LinkId=92834“适用于 .NET 的 Oracle 数据提供程序常见问题解答”。
在 64 位安装BizTalk Server管理控制台中配置 Oracle E-Business Suite 适配器端口时绑定错误无效
问题
尝试在 BizTalk Server 管理控制台中为适配器配置端口时,收到以下错误:
"Unable to create binding configuration element for editing. Check the values of the BindingType and BindingConfiguration properties.
(Microsoft.Biztalk.Adapter.Wcf.Converters.CreateBindingException) Unable to get binding type for binding extension "oracleEBSBinding".
Verify the binding extension is registered in machine.config."
原因
Oracle E-Business 适配器是 WCF 自定义绑定,在 machine.config 文件中的 System.ServiceModel 下注册。 64 位平台有两个 machine.config 文件,一个由 32 位应用程序使用,另一个由 64 位应用程序使用。 因此,安装 64 位版本的 BizTalk 适配器包时,安装向导会在 64 位版本的 machine.config 文件中注册绑定。 但是,BizTalk Server管理控制台作为 32 位进程运行,因此在为适配器配置端口时,它会在 32 位版本的 machine.config 文件中检查绑定,但无法显示错误。
解决方法
在 64 位 WCF LOB 适配器 SDK 安装上安装 32 位和 64 位版本的 BizTalk 适配器包。
重要
只能安装 64 位 WCF LOB 适配器 SDK。 不支持在单台计算机上并行安装 32 位和 64 位 WCF LOB 适配器 SDK。
使用修补程序集 11.1.0.7 安装适用于 Oracle 客户端 11.1.0.6 的 32 位和 64 位版本的 Oracle 数据访问组件。
注意
若要确保应用程序适用于最新版本的 ODP.NET,必须在计算机上安装“策略 DLL”并在 GAC 中注册。 有关详细信息,请参阅 中的 https://go.microsoft.com/fwlink/p/?LinkId=92834“适用于 .NET 的 Oracle 数据提供程序常见问题解答”。