使用适配器服务 BizTalk 项目外接程序为 Oracle 数据库项目(架构文件以外的)生成元数据时,使用适配器服务外接程序也会生成端口绑定文件。 可以将此绑定文件导入 BizTalk 应用程序,以创建物理发送或接收端口。 有关导入绑定文件的说明,请参阅 重复使用 Oracle 数据库适配器绑定。 如果导入此绑定文件,则无需手动创建物理发送或接收端口。
重要
在使用适配器服务 BizTalk 项目外接程序时,如果未为字符串类型的绑定属性指定值,并且其默认值为 null,则绑定属性在绑定文件中将不可用。 如果需要,必须在绑定文件中手动添加绑定属性及其值。
使用端口绑定文件创建端口始终创建双向发送或接收端口。 如果要创建单向发送或接收端口,可以按照 手动配置到 Oracle 数据库适配器的物理端口绑定中所述的过程手动创建端口。 或者,可以按照本主题中所述的解决方法修改端口绑定文件以创建单向发送或接收端口。
以下是一些要点,您必须了解有关消费适配器服务加载项生成的绑定文件:
这些文件是使用特定的命名约定创建的。 如果为发送消息到 Oracle 数据库的出站操作生成了元数据,则该文件的名称为 WcfSendPort_OracleDBBinding_Custom.bindinginfo.xml。
如果您为入站操作生成了元数据,即用于从Oracle数据库接收消息,则文件名称为WcfReceivePort_OracleDBBinding_Custom.bindinginfo.xml。
该文件包含有关绑定配置、绑定类型、终结点 URI 及基于生成元数据的操作的端口操作的信息。 导入此绑定文件以创建端口时,将自动在端口上设置配置物理端口所需的所有相关信息。
重要
默认情况下,发送端口上的操作将映射到生成其元数据的操作名称。 例如,如果为 ACCOUNTACTIVITY 表上的 Select 操作生成元数据,则端口上的操作将设置为
<Operation Name="Select" Action="http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/ACCOUNTACTIVITY/Select" />
。 但是,您在 BizTalk 业务流程中创建的逻辑发送端口上的操作名称可能会不同。 您必须确保逻辑端口(在 BizTalk 业务流程中)和物理发送端口(在 BizTalk Server 管理控制台中)的操作名称相同。 否则,通过发送端口将消息发送到 Oracle 数据库时会收到错误。只需提供用于连接到 Oracle 数据库的端口的凭据。 虽然绑定文件确实保留了要连接的用户名,但出于安全原因,绑定文件不包含密码。
使用端口绑定文件时的重要注意事项
导入绑定文件时,可能会收到一条对话框消息,告知绑定文件中的 BizTalk 应用程序名称与导入绑定文件的应用程序名称不匹配。 可以安全地忽略此消息并继续。
绑定文件还包含端口的名称和接收位置。 如果要将绑定文件导入到的 BizTalk 应用程序会创建一个端口或接收位置,该端口的名称与同一 BizTalk 应用程序中已有的端口相同,则会收到错误。 必须手动编辑绑定文件,以指定端口或接收位置的唯一名称。
绑定文件还包含有关连接 URI 的信息。 如果绑定文件创建一个接收位置,该接收位置与同一 BizTalk 应用程序中已有的接收位置具有相同的接收 URI,则会收到错误。 必须手动编辑绑定文件才能指定唯一 URI。 可以通过添加轮询 ID 来指定一个唯一 URI。
默认情况下,端口绑定文件始终包含双向端口(发送或接收)的定义。 在 BizTalk 应用程序中导入此文件时,它会创建双向发送或接收端口。 但是,可能有一个具有单向发送或接收端口的业务流程。 因此,配置此类编排并使用通过导入绑定文件所创建的端口时,该端口不会出现在列表中。 发生这种情况的原因是,在业务流程中创建的逻辑端口是单向端口,而业务流程中创建的物理端口是双向端口。 在这种情况下,可以编辑绑定文件以进行以下更改:
为此 执行此操作 编辑端口绑定文件以配置单向发送端口 - 在以下摘录中,将 IsTwoWay 属性的值更改为 false。 最初,此值设置为 true。
<SendPort Name="port_name" IsStatic="true" IsTwoWay="false" BindingOption="0">
- 注释掉以下摘录:
<ReceivePipeline Name="Microsoft.BizTalk.DefaultPipelines.XMLReceive" FullyQualifiedName="Microsoft.BizTalk.DefaultPipelines.XMLReceive, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=token" Type="1" TrackingOption="None" Description=""/>
<ReceivePipelineData xsi:nil="true" />
编辑端口绑定文件以配置单向接收端口 - 在以下摘录中,将 IsTwoWay 属性的值更改为 false。 最初,此值设置为 true。
<ReceivePort Name="port_name" IsTwoWay="false" BindingOption="1">
- 注释掉以下摘录:
<SendPipeline Name="Microsoft.BizTalk.DefaultPipelines.XMLTransmit" FullyQualifiedName="Microsoft.BizTalk.DefaultPipelines.XMLTransmit, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=token" Type="2" TrackingOption="None" Description="" />
<SendPipelineData xsi:nil="true" />
<SendPipelineData xsi:nil="true" />
使用使用适配器服务外接程序生成的端口绑定文件配置 WCF-OracleDB 端口
使用适配器服务外接程序创建可在 BizTalk Server 管理控制台中导入的端口绑定文件。 可以使用同一端口绑定文件在 BizTalk Server 管理控制台中创建 BizTalk WCF-OracleDB 端口。 但是,在创建 WCF-OracleDB 端口之前,必须执行以下任务来修改端口绑定文件。
在文本编辑器中打开端口绑定文件。
搜索“WCF-Custom”并将其替换为在 BizTalk Server 管理控制台中添加 WCF-OracleDB 适配器的名称。 例如,如果将 WCF-OracleDB 适配器添加为“OracleDBAdapter”,请将“WCF-Custom”替换为“OracleDBAdapter”。
搜索“ConfigurationClsid”属性,并将该属性的现有值替换为“D7127586-E851-412e-8A8A-2428AEDDC219”。
保存并关闭绑定文件。
在 BizTalk Server 管理控制台中导入绑定文件。 有关如何导入绑定文件的说明,请参阅 重复使用 Oracle 数据库适配器绑定。