是否可以讓服務器向所有連接的客戶端發送消息,而無需等待任何操作?讓我解釋一下:-)我一直在閱讀docs/examples,我沒有發現任何滿足我需求的東西:流程總是一樣的;一個客戶端連接(例如:一個GET調用Rest API),連接是懸而未決的,直到接收到一個新的API調用(例如POST調用),服務器只是等待(至少這是我所理解的)。我的用例非常不同:我希望服務器在新數據可用時發送一些「通知」。這將是我的使用情況(很simplifed):Atmosphere Jersey - 服務器消息
- 客戶端A連接到服務器
- 連接被暫停,因爲沒有新的數據可在瞬間
- 服務器得到通知,新的數據可以從一個外部 源,並將其廣播到客戶端A
- 轉到步驟2
我所取得的成就迄今越來越成功建立連接。下一步是解決這個服務器問題。我必須說這項技術對我來說是全新的,所以我可能會誤解某些事情是有效的。如果是這樣的話,讓我知道!
這是我的籌碼:
- 春3.2.0發佈
- 澤西1.8
- 氣氛新澤西1.0.13
- 的Tomcat 7.0.40
謝謝大家提前!
UPDATE:以下this後,我得到這樣的警告,我不知道如何擺脫:
2013-06-04 09:40:36,284 WARN [org.atmosphere.cpr.AtmosphereFramework] - Failed using comet support: org.atmosphere.container.Tomcat7AsyncSupportWithWebSocket, error: Tomcat failed to detect this is a Comet application because context.xml is missing or the Http11NioProtocol Connector is not enabled.
If that's not the case, you can also remove META-INF/context.xml and WEB-INF/lib/atmosphere-compat-tomcat.jar Is the Nio or Apr Connector enabled?
2013-06-04 09:40:36,285 WARN [org.atmosphere.cpr.AtmosphereFramework] - Using org.atmosphere.container.Tomcat7BIOSupportWithWebSocket
我跟着應用程序結構評論here,所以這不應該是一個問題。我已經注意到通過改變傳輸到「websocket」而不是「long-polling」顯示沒有錯誤。服務器終於發送數據困難:)