Web 消息传递服务快速入门

Web 消息传递服务由一个运行时 JavaTM 归档 (JAR) 文件(此文件位于 WebSphere® Application Server 安装目录中)和一个库(将作为实用程序 JAR 文件插入新的 Web 模块或现有 Web 模块)组成。本节提供有关启用 Web 消息传递服务和开发支持 Web 消息传递的应用程序的简要指示信息。本节中包含与提供了更详细描述的各节的链接。.


步骤 1. 安装 Web 消息传递服务。

必须安装 Web 消息传递服务,才能运行支持 Web 消息传递的应用程序。请参阅 IBM® WebSphere Application Server Feature Pack for Web 2.0 and Mobile 安装指示信息以获取更多信息。

步骤 2. 找到实用程序库。

查找随此文档一起提供的 Web 消息传递服务实用程序库。 

步骤 3. 启用 Web 消息传递服务

必须启用 Web 消息传递服务,才能运行支持 Web 消息传递的应用程序。有关更多信息,请参阅启用 Web 消息传递服务指示信息。

  1. 登录至 WebSphere Application Server 的管理控制台。
  2. 浏览到服务器 -> 应用程序服务器
  3. 选择当前使用的应用程序服务器。
  4. 展开“Web 容器设置”并选择 Web 容器传输链。
  5. 选择 WCInboundDefault 传输链,或者选择与您在安装应用程序期间将选择的虚拟主机相对应的传输链。
  6. 选择“Web 容器入站通道 (WCC 2)”。
  7. 选择“定制属性”。
  8. 单击新建
  9. 对于 name 属性输入 webmsgenabled,并对“值”输入 true。
  10. 单击应用
  11. 单击保存以保存存储库信息。
  12. 可以立即重新启动应用程序服务器,也可以等到完成“配置服务集成总线”步骤之后才重新启动应用程序服务器。

步骤 4. 配置服务集成总线。

Web 消息传递应用程序必须让一个已配置并且定义了主题空间的服务集成总线运行。必须至少在 Web 消息传递配置文件中提供了总线名称,Web 消息传递应用程序才能运行。

步骤 5. 将 Dojo Toolkit 插入 Web 模块中。

Dojo Toolkit 为 Web 消息传递服务提供了客户机支持。最容易实现的方法就是将 Dojo Tookit 包括在 Web 模块中。如果未将 Dojo Toolkit 包括在 Web 模块中(例如,通过 Web 服务器来静态处理),那么必须知道 dojo.js 文件的统一资源标识 (URI) 位置,以将 Dojo Toolkit 装入任何 Web 模块表示文件。

步骤 6. 将 Web 消息传递实用程序库嵌入到 Web 模块中。

最好是将 Web 消息传递实用程序库插入 Web 模块的 WEB-INF/lib 目录中作为一个实用程序库。将步骤 1 中找到的 webmsg_applib.jar 文件复制到 Web 模块的 WEB-INF/lib 目录中。可以使用与 Dojo Toolkit 位于同一 Web 模块或者位于另一个 Web 模块中的 Web 消息传递实用程序库。关键的交互点是 Bayeux 协议通信 URI。请参阅各个安装步骤以了解更多信息。

步骤 7. 确定 Web 消息传递服务通信 URI 并将 Web 消息传递 servlet 映射至该 URI。

Servlet 映射参数“/webmsgServlet”定义 Dojo bayeux 客户机与 Web 消息传递服务之间的通信 URI。在服务器端,必须创建与 dojox.cometd.init initialization 参数相匹配的 Servlet 映射。Servlet 映射将映射至 Servlet 类 com.ibm.websphere.webmsg.servlet.WebMsgServlet。Web 消息传递实用程序库中提供了此 Servlet。下面显示的是一个 web.xml 文件示例: 有关更多信息,请参阅开发支持 Web 消息传递的应用程序
	
  <servlet>
    <description/>
    <display-name>
       WebMsgServlet
    </display-name>
    <servlet-name>WebMsgServlet</servlet-name>
    <servlet-class>
	com.ibm.websphere.webmsg.servlet.WebMsgServlet
    </servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>WebMsgServlet</servlet-name>
    <url-pattern>/webmsgServlet</url-pattern>
  </servlet-mapping>
 

      
在步骤 9 中,Dojo Toolkit cometd 客户机将使用上面所定义的 URI 来完成初始化过程。在步骤 9 中使用了表示文件中的一个简单的初始化语句,并且在此处显示了示例以进行比较:  dojox.cometd.init( "webmsgServlet");

步骤 8. 创建 Web 消息传递配置文件。

Web 消息传递服务从配置文件中读取配置参数以处理传入 Web 消息传递请求。在 WEB-INF 目录中创建 Web 消息传递配置文件 webmsg.json(与 web.xml 文件位于同一个目录中),与以下示例相似。webmsg.json 文件被指定为 JSON 对象(映射),每个键与映射至 Web 消息传递 Servlet 的现有 Servlet 名称相匹配。配置概述一节提供了有关所有可能存在的配置选项的信息。

{
   "WebMsgServlet": 
      {  
         "busName": "thebus", 
         "destination": "Default.Topic.Space", 
         "clientCanPublish": true,
         "longPollTimeout": 30
      }
}
      

步骤 9. 创建客户机应用程序。

现在,在服务器端已经完成了所有设置,就只需安装应用程序了。其余的任务就是使用 Dojo Toolkit 功能创建客户机端逻辑。下面提供了一个简单的测试示例。请注意初始化 URI 参数如何与 Web 消息传递 Servlet 映射相匹配。

<html>
  <head>
    <title>cometd client/server test page</title>

    <script type="text/javascript" src="dojo/dojo.js" 
        djConfig="isDebug: true, parseOnLoad: true, debugAtAllCosts: false"></script>
    <script type="text/javascript">
       dojo.require("dojox.cometd");
       dojo.addOnLoad(function(){
          dojox.cometd.init("webmsgServlet")
          dojox.cometd.subscribe("/testtopic", window, "display");
         }
       );
       function display(msg) {
           alert("Message " + msg.data.test);
       }
    </script>
    <div align="left">
      <button Id="publishButton" onclick="dojox.cometd.publish('/testtopic', {test: 'Data'});">
         <span style="font-size:small">PUBLISH</span>
      </button>
    </div>
   </head>
   <body></body>
</html>
      

步骤 10. 安装和运行应用程序。

使用标准的 Web 应用程序组装、安装和测试过程来组装、安装和测试应用程序。



使用条款 | 反馈