Web 傳訊服務由一個執行時期 JavaTM 保存檔 (JAR) 及一個程式庫組成,執行時期 JAR 保存檔放在 WebSphere® Application Server 安裝目錄中,程式庫設計成作為公用程式 JAR 檔插入新的或現有的 Web 模組中。 這一節提供若干簡短指示來協助您啟用 Web 傳訊服務及開發啟用 Web 傳訊的應用程式。 這一節還包括若干鏈結,供您進入更詳細的章節。 .
Linux 和 UNIX:/opt/WebSphere/AppServer |
---|
Windows:c:\WebSphere\AppServer
|
Linux 和 UNIX:/opt/WebSphere/AppServer/optionalLibraries/webmsg_applib.jar。
|
---|
Windows:c:\WebSphere\AppServer\optionalLibraries\webmsg_applib.jar。
|
您必須啟用 Web 傳訊服務,才能執行啟用 Web 傳訊的應用程式。 請參閱啟用 Web 傳訊服務指示,以取得相關資訊。
Web 傳訊應用程式必須有配置了已定義的主題空間之服務整合匯流排,才能執行。 至少必須在 Web 傳訊配置檔中提供匯流排名稱,Web 傳訊應用程式才能運作。
Dojo Toolkit 提供 Web 傳訊服務的用戶端支援。 最簡單的方法就是將 Dojo Toolkit 併入 Web 模組中。 如果沒有將 Dojo Toolkit 併入 Web 模組中(例如,由 Web 伺服器來靜態提供),就必須知道 dojo.js 檔的「統一資源識別碼 (URI)」位置,以便在任何 Web 模組簡報檔案中載入 Dojo Toolkit。
插入 Web 傳訊公用程式庫的最佳位置是在 Web 模組的 WEB-INF/lib 目錄中,以作為一個公用程式庫。 請將在第 1 步驟中找到的 webmsg_applib.jar 檔複製到 Web 模組的 WEB-INF/lib 目錄中。 您可以在 Dojo Toolkit 的相同 Web 模組中,或在不同的 Web 模組中,使用 Web 傳訊公用程式庫。 主要互動點是 Bayeux 通訊協定通訊 URI。 請參閱安裝步驟,以取得進一步的資訊。
<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> |
Web 傳訊服務會讀取配置檔中的配置參數來處理送入的 Web 傳訊要求。
請在 WEB-INF 目錄(web.xml 檔的相同目錄)中,建立一個類似下列範例的 Web 傳訊配置檔 webmsg.json。
webmsg.json 檔指定為一個「JSON 物件(對映)」,每個符合現有 Servlet 名稱的索引鍵都對映於 Web 傳訊 Servlet。
配置概觀一節提供所有可能的配置選項的相關資訊。
{ "WebMsgServlet": { "busName": "thebus", "destination": "Default.Topic.Space", "clientCanPublish": true, "longPollTimeout": 30 } } |
除了安裝應用程式之外,所有伺服器端設定都已經完成。
其餘作業是利用 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> |
請利用標準 Web 應用程式組合、安裝及測試程序來組合、安裝及測試應用程式。