1
我在Wicket中創建了一個Web-Socket應用程序,該應用程序具有將消息推送到所有客戶端的服務器。註冊客戶端(應用程序,sessionId和密鑰(PageId))後,服務器會推送消息。到現在爲止還挺好。但是,如果我在同一個客戶端上有同一瀏覽器的多個瀏覽器窗口,則只有一個窗口會收到該消息並對其進行處理。Wicket Web Sockets無法在多個瀏覽器窗口中工作
所有瀏覽器窗口(同一瀏覽器)共享同一個sessionId嗎?如果是的話,他們之間有什麼區別?
嗨,我正在與同樣的問題苦苦掙扎。您提出的解決方案有一個問題 - 呈現新選項卡的頁面 - 建立新的websocket連接(並且會覆蓋連接註冊表中的以前連接),然後通知您這是一個新選項卡。但是你已經失去了對前一次連接的引用。有任何想法嗎? –
我已經嘗試過'RequestCycleListener',它檢查'onRequestHandlerResolved'是否處理程序是已打開websocket連接的現有頁面實例的'RenderPageRequestHandler'。如果是這樣,它將被替換爲新頁面的新處理程序。這工作相當不錯,但我無法區分新標籤頁和刷新當前標籤頁。 –