设置“SOAP 节点”样本以使用 JMS 传输

开始之前:

如果要在 Linux 上运行该样本,必须完成以下步骤:

  1. 将 JMSAdmin 类添加到类路径,方法是将以下文件添加到类路径:
    <mq_install_directory>/java/lib/com.ibm.mqjms.jar
  2. 将 Java 位置添加到 PATH 变量,方法是在类路径中包含以下代码:
    <JAVA_HOME>/bin

使用 JMSAdmin 创建受管对象

以下指示信息假设 WebSphere MQ 安装在 mq_install_dir 目录中。JMSAdmin 工具和 JMSAdmin 配置文件位于以下位置:

在“SOAP 节点样本流”项目中,必须将 SOAPJMSSample.defs 文件与 JMSAdmin 工具配合使用。

必须先修改 JMSAdmin.config 文件,然后才能使用 JMSAdmin 工具。

修改 JMSAdmin.config 文件

要修改 JMSAdmin.config 文件:

  1. 在文本编辑器中,打开 JMSAdmin.config 文件。
  2. 要注释掉不需要的任何选项,请添加数字符号 (#)。要取消注释任何选项,请除去数字符号 (#)。
    #  The following line specifies which JNDI service provider is in use.
    #  It currently indicates a File System Context. If a different
    #  service provider is used, this line must be commented out, and the
    #  appropriate one must be uncommented.
    #
    #  com.sun.jndi.fscontext.RefFSContextFactory is the FileSystem JNDI Context
    #
    #INITIAL_CONTEXT_FACTORY=com.sun.jndi.ldap.LdapCtxFactory
    INITIAL_CONTEXT_FACTORY=com.sun.jndi.fscontext.RefFSContextFactory
    #INITIAL_CONTEXT_FACTORY=com.ibm.ejs.ns.jndi.CNInitialContextFactory
    #INITIAL_CONTEXT_FACTORY=com.ibm.websphere.naming.WsnInitialContextFactory
    #
    #  The following line specifies the URL of the initial context
    #  for the service provider. It currently refers to a File System Context. 
    #  Examples of an LDAP root context URL and the JNDI namespace for WebSphere 
    #  are also shown, commented out.
    #
    #PROVIDER_URL=ldap://localhost/o=ibm,c=us
    PROVIDER_URL=file:/C:/SOAPJNDIBindings
    #PROVIDER_URL=iiop://localhost/	
    
  3. 确保 PROVIDER_URL 设置为:

    确保 INITIAL_CONTEXT_FACTORY 设置为 com.sun.jndi.fscontext.RefFSContextFactory

  4. 保存文件,然后创建 JNDI-Directory 目录,如 PROVIDER_URL 行中所示。

现在,您可以创建对象了。

创建对象

通过运行 WebSphere MQ JMSAdmin 工具,您可以创建 JNDI 受管对象以配置样本中使用的 JMS 连接工厂和目标。

您可以通过运行 JMSAdmin 工具并使用 SOAPJMSSample.defs 文件作为输入来创建对象。

在命令行上,输入以下命令:

其中,WebSphere MQ 安装在位置 mq_install_dir 中,而 workspace_path 是 IBM Integration Toolkit 工作空间目录的完整路径。

将创建对象和 .bindings 文件。

配置 SOAP 节点使用 JMS

  1. 在消息流编辑器中打开 SOAPNodesSampleFlows.SOAPNodesSampleProviderFlow 消息流。
  2. 右键单击消息流中的 SOAPInput 节点,然后单击“属性”以显示“属性”视图。
  3. 在“属性”视图中,选择“基本”选项卡。
  4. 导入的绑定”字段的值已设置为 OrderServiceSOAP,“传输”属性的值已设置为 HTTP。请将“导入的绑定”的值更改为 OrderServiceSOAPJMSBinding。“传输”属性的值会更改为 JMS
  5. 在消息流编辑器中打开 SOAPNodesSampleFlows.SOAPNodesSampleConsumerFlow 消息流,使用上述步骤配置 SOAPRequest 节点的“导入的绑定”字段。

配置消息流中的 JNDI 路径

使用 .bindings 文件的位置配置 SOAP 节点:

  1. 在消息流编辑器中打开 SOAPNodesSampleFlows.SOAPNodesSampleProviderFlow 消息流。
  2. 右键单击消息流中的 SOAPInput 节点,然后单击“属性”以显示“属性”视图。
  3. 在“属性”视图中,选择“JMS 传输”选项卡。
  4. 在“位置 JNDI URL 绑定”字段中,输入在 JMSAdmin.config 文件的 PROVIDER_URL 行中指定的路径。
  5. 确保您在节点属性中输入的路径与 JMSAdmin.config 文件中的路径匹配。如果两个路径不匹配,那么消息流将无法工作。请确保路径所指定的目录存在于系统上。
  6. 保存消息流。
  7. 在消息流编辑器中打开 SOAPNodesSampleFlows.SOAPNodesSampleConsumerFlow 消息流,通过上述步骤使用 .bindings 文件的位置配置 SOAPRequest 节点。
  8. 消息流现已配置,且可以部署到 Integration 节点。

重新构建 BAR 文件并部署消息流

要部署经过修改的 SOAPNodesSampleConsumerSOAPNodesSampleProvider 流,请重新构建同时包含这两个消息流的代理归档 (BAR) 文件。

构建 BAR 文件:

  1. 双击 SOAPNodesSampleFlows.SOAPNodesSampleBAR.bar BAR 文件。
  2. 在“管理”选项卡中,单击“构建”以重新构建 BAR 文件。
  3. 保存构建的 BAR 文件。
  4. 单击该 BAR 文件并将其拖动到“Integration 节点”视图中的缺省执行组。此操作会将流部署到 Integration 节点。

现在,您可以运行该样本,请参阅运行“SOAP 节点”样本。可以使用同样的流测试,因为客户机流由 WebSphere MQ 队列驱动。

返回到样本主页