2012-07-22 54 views
0

我正在尋找使用glassfish和彗星的聊天應用程序的工作示例。 我希望當一個客戶端更新服務器中的數據時,其他客戶端也會看到數據刷新頁面。或者服務器中的數據發生變化的任何推送通知。 它非常緊急。在此先感謝在glassfish和servlet中使用commet進行聊天的最簡單的方法

+0

這不是一個問題,你有什麼嘗試?你有沒有例外?你希望我們爲你寫代碼嗎? – Tomer 2012-07-22 08:13:01

+0

我想這個http://download.java.net/maven/2/com/sun/grizzly/samples/grizzly-comet-hidden/1.7.3.1/,但它似乎並沒有更新第三方客戶端有關數據在客戶端發生變化。假設我已經打開了2個客戶端,並且在一個客戶端中單擊了該按鈕,除非我刷新,否則該計數器不會在另一個客戶端中更新。任何方式,感謝您的promt響應。 – 2012-07-22 08:16:57

+0

請更改您的問題,發佈一些相關的代碼片段並正確描述問題。 – Tomer 2012-07-22 08:18:23

回答

0

構建基於Web的聊天室的最簡單方法是使用慧星雲服務,而不是自行構建長輪詢的內容。您可以從EZComet

看到一個例子

enter link description here

雖然,它是在PHP,但我認爲這將是很容易寫一個Java版本。

1

而不是Commet,只需使用套接字。您需要不斷感受服務器的脈動,以便從其他用戶的響應中獲取更新。在從服務器發送的響應令牌中,如果有新更新,請在新線程中提取更新。這些消息可以有一個包含發件人設備標識和消息主體的標題。因此,在某個時間點,您可以爲設備提供所有更新,並且用戶界面可以在每個視圖中分別顯示它們; 在用戶的列表視圖中,顯示最後一條消息+新的未讀消息的數量。在聊天窗口中,顯示所有消息。屬於用戶。

希望它有幫助