针对 Oracle 电子商务套件的 Microsoft BizTalk 适配器是一个 Windows Communication Foundation (WCF) 的自定义绑定。 此绑定包含单个自定义传输绑定元素,该元素可实现与 Oracle 电子商务套件的通信。 Oracle电子商务适配器由Microsoft Windows Communication Foundation(WCF)行业适配器SDK运行时封装,并通过WCF通道架构向应用程序公开。 Oracle 电子商务适配器通过用于 .NET 的 Oracle 数据提供程序(ODP.NET)和 Oracle 客户端与 Oracle 电子商务套件通信,后者是适用于 Windows 的 Oracle 数据访问组件(ODAC)的一部分。
下图显示了使用 Oracle 电子商务适配器开发的解决方案的端到端体系结构。
消耗适配器
Oracle E-Business 适配器将 Oracle E-Business Suite 作为 WCF 服务公开给客户端应用程序。 若要在 Oracle 电子商务套件上执行作和访问数据,客户端应用程序通过 WCF 通道与 Oracle 电子商务适配器交换 SOAP 消息。 上图显示了可以使用 Oracle 电子商务适配器的四种方式。 它们分别是:
通过 WCF 通道模型应用程序。 WCF 通道模型应用程序使用 WCF 通道模型直接与 Oracle 电子商务适配器交换 SOAP 消息,以执行 Oracle 电子商务套件上的操作。
通过 WCF 服务模型应用程序。 WCF 服务模型应用程序通过 WCF 客户端调用方法以对 Oracle 电子商务套件执行操作。 WCF 客户端将 Oracle 电子商务适配器公开的操作建模为 .NET 方法。 可以使用 Microsoft Windows Communication Foundation (WCF) 业务线 (LOB) 适配器 SDK 或 WCF ServiceModel 元数据实用工具工具(svcutil.exe)从 Oracle E-Business 适配器公开的元数据创建 WCF 客户端类。
通过 BizTalk 接收位置或发送端口,配置为使用 Microsoft BizTalk WCF-Custom 适配器。 WCF-Custom 适配器允许使用 WCF 扩展性功能。 通过使用 WCF-Custom 适配器,可以选择和配置 Oracle EBS 绑定以及接收位置或发送端口的行为。 有关如何在 BizTalk Server 解决方案中使用 Oracle 电子商务适配器的详细信息,请参阅 使用 Oracle E-Business Suite 适配器开发 BizTalk 应用程序。
通过 IIS 托管的 Web 服务。 在此方案中,使用适配器生成的 WCF 服务代理使用 basicHttpBinding WCF 绑定在 IIS 中托管。 这会将服务协定作为 Web 服务公开给外部用户。 IIS 在运行时自动托管适配器,后者反过来又与 Oracle 电子商务套件通信。
Oracle E-Business 适配器和 ODAC 始终与使用适配器的应用程序或服务一起托管在进程内。
Oracle EBS 适配器和 WCF
WCF 提供了一种基于在客户端与服务之间通道上交换 SOAP 消息的编程模型。 这些消息在通信客户端和服务公开的终结点之间发送。 终结点包括:
终结点地址,指定接收消息的位置
一个 绑定,它指定用于交换消息的通信协议
合同,指定终结点公开的操作和数据类型。
绑定由一个或多个绑定元素组成,这些元素相互堆叠,用于定义如何与终结点交换消息。 绑定必须至少指定用于与终结点交换消息的传输和编码。 终结点之间的消息交换发生在由一个或多个通道组成的通道堆栈上。 每个通道都是为终结点配置的绑定中绑定元素之一的具体实现。 WCF 文档包含有关 WCF 和 WCF 编程模型的更多详细信息。
适用于 Oracle E-Business Suite 的 Microsoft BizTalk 适配器公开 WCF 自定义绑定(Microsoft.Adapters.OracleEBS.OracleEBSBinding)。 默认情况下,此绑定包含单个自定义传输绑定元素,即 Oracle E-Business Suite 适配器绑定元素(Microsoft.Adapters.OracleEBS.OracleEBSAdapter),用于在 Oracle E-Business Suite 上启用作。
Microsoft.Adapters.OracleEBS.OracleEBSBinding (Oracle E-Business Suite 绑定)和 Microsoft.Adapters.OracleEBS.OracleEBSAdapter (Oracle E-Business Suite 适配器绑定元素)是公共类,也公开给配置系统。 由于 Oracle E-Business Suite 适配器绑定元素公开,因此你可以生成自己的自定义 WCF 绑定,能够扩展 Oracle 电子商务适配器的功能。 例如,可以实现自定义绑定以支持 WCF 通道或服务模型解决方案中的企业单一登录(SSO)。 这样做的原因是为了将多个数据库操作整合到一个单一的多功能操作中,或者在自定义应用程序实施的操作与 Oracle E-Business Suite 上的操作之间执行架构转换。
Oracle EBS 适配器和 WCF LOB SDK
Oracle E-Business 适配器基于 Microsoft Windows Communication Foundation (WCF) 业务线 (LOB) 适配器 SDK 构建,在 WCF LOB 适配器 SDK 运行时上运行。
WCF LOB 适配器 SDK 提供一个软件框架和工具基础结构,Oracle E-Business 适配器用于向用户和适配器客户端提供一组丰富的功能。 它还充当 Oracle 电子商务适配器与 Windows Communication Foundation(WCF)接口的软件层。 ODP.NET 充当 Oracle 电子商务适配器与 Oracle 数据库接口的层。
下图显示了 Oracle 电子商务适配器、WCF LOB 适配器 SDK 和 ODP.NET 的内部组件之间的关系:
ODP.NET
Oracle 电子商务适配器通过 ODP.NET 和 Oracle 客户端与 Oracle 电子商务套件连接。 这两个组件都是 Oracle 数据访问组件(ODAC)的一部分。
ODP.NET 实现了一个与 ADO.NET 接口一致的 Oracle 电子商务套件的数据提供程序。 Oracle 电子商务适配器使用 ODP.NET 公开的类在 Oracle 电子商务套件上运行。
Oracle 客户端提供与 Oracle 电子商务套件的连接。 通过向 Oracle E-Business 适配器提供连接 URI 来建立与 Oracle 电子商务套件的连接。 可以通过两种方式指定连接 URI:
使用 tnsnames.ora。 在此方法中,适配器客户端提供的连接 URI 仅包含 tnsnames.ora 文件中指定的 net 服务名称。 适配器从文件中的 net 服务名称条目中提取连接参数,例如服务器名称、服务名称、端口号等。 若要使用此方法,必须将运行 Oracle 客户端的计算机配置为在 tnsnames.ora 文件中包括 Oracle 数据库的 Net 服务名称。
不使用 tnsnames.ora。 在此方法中,适配器客户端直接在连接 URI 中指定连接参数。 这不需要 net 服务名称存在于客户端计算机上的 tnsnames.ora 文件中。 此方法甚至不需要客户端计算机上存在 tnsnames.ora 文件。
有关连接 URI 的详细信息,请参阅 创建与 Oracle E-Business Suite 的连接。