技术开发 频道

通过 IBM WESB 和 IBM WebSphere DataPower SOA Appliances 使 SOA

    创建主题配置工厂

    现在您已经准备好创建主题配置工厂:

    为了让连接工厂工作,还必须为 Provider Endpoints 字段提供有效设置。此字段包含用于连接到引导引擎的端点列表。如果不希望在通过 JMS 客户机连接到主题时处理不需要的异常,则应该根据以下约定提供此设置:esbHostName:bootstrapPort:BootstrapBasicMessaging,其中:
    esbHostName 为承载 ESB 的计算机的名称。
    bootstrapPort 为引导端点。

    如果要检查此端点的正确值,请选择 Server 部分下的 Application servers 链接。然后选择 default server (server1) 并在所显示的服务器详细信息页面中的 communication 部分下单击 ports 链接。将会打开包含 SIB_ENDPOINT_ADDRESS 行的窗口,此行中包含端口相关的信息(请参见图 13)。

图 13. 管理控制台:端口
 


    在管理控制台的导航窗格中,选择 Resources > JMS Providers > Default Messaging。
选择 ConnectionFactories 部分下的 JMSTopicConnectionFactory 链接。在出现的窗口中选择 New,以创建新主题连接工厂(请参见图 14)。

图 14. 管理控制台:新建主题连接工厂
 


    输入以下值,以配置主题配置工厂管理信息(请参见图 15):
    名称: sampleTCF
    JNDI 名称: jms/sampleTCF
    配置主题配置工厂连接信息。提供了前面步骤的所有信息后,请从下拉列表中选择以下值:
    总线名称:SCA.APPLICATION.esbCell.Bus
    提供者端点:esbHostName:bootstrapPort:BootstrapBasicMessaging

    配置主题配置工厂可持续订阅信息。对于此场景,我们决定使用可持续主题来保证消息的交互,即使诊所暂时断开连接也无妨。要完成此步骤,应该进行以下工作:

    提供在使用此连接工厂创建的所有连接上使用的客户端标识符。此设置还可以通过编程方式提供,但最好将其定义为配置步骤。您可以为此设置键入任何字符串。在我们使用的示例中,我们使用 ASLID 作为客户端标识符。
    提供有效的可持续订阅主地址,此地址为用于存储交付到可持续订阅的消息的消息传递引擎名称。指定为主题使用的消息传递总线的完整名称。

    在本例中,此值为 esbNode.server1-SCA.APPLICATION.esbCell.Bus,其中, esbNode 和 server1 分别为计算机上的 ESB 节点和缺省服务器的名称。

    通过以下步骤配置主题配置工厂持久消息可靠性(请参见图 15):
    从 Persistent message reliability 下拉列表中选择 Assured persistent 选项。
    选择要为主题连接使用的隔离级别。存在多种可能性,包括 Cluster、Always shared 和 Never shared。您可以根据您的应用程序域选择其中之一。对于此场景,我们决定使用 Always shared 选项来让主题在多个 JMS 订阅者之间共享。


图 15. 管理控制台:配置主题连接工厂
 


    创建导入主题空间

    创建了主题空间、主题和主题连接工厂后,可以定义新导入 JMS 消息传递绑定,并按照图 16 中所示提供此信息。


图 16. 管理控制台:JMS 导入绑定
 

    在本系列的第三篇文章中将提供关于如何进行此工作的详细信息。务必强调的是,您必须选择 Business Object XML using JMSTextMessage 作为序列化类型。这样可以确保 SOAP 消息的加密主体采用 XML 形式传递到主题,然后可以使用某个 XML 安全标准解密算法进行解析和重新构建(如本系列的最后一篇文章中所述)。

    结束语

    本文完整地概述了关于卫生保健预约系统的真实场景,并描述了所采用的体系结构图。另外,我们还提供了关于如何配置 ESB 导入绑定的详细说明。请继续阅读本系列的第 2 部分,其中将重点讨论需要添加到解决方案中的其他组件。

0
相关文章