2015-11-25 20 views
1

我實際上是在一場噩夢中。我的web應用使用websockets進行聊天,問題出現在這裏:Websocket @OnOpen未在Glassfish 4.1.1上被解僱Payara 4.1.1.115 Tyrus 1.11

使用Glassfish 4.1u13一切正常,直到我激活了Access Log Monitoring。因爲那樣,每個ws請求都做了2次,web套接字不能握手。 https://java.net/jira/browse/GLASSFISH-21007

嘗試更新到玻璃魚4.1.1 - >問題仍然存在

試圖切換到似鯖水狼牙魚4.1.1.115(這是的GlassFish一個補丁版本),一切都順利。我現在可以在我的Glassfish實例中使用websockets和訪問日誌記錄。

幾分鐘後,我注意到當我重新加載頁面時,並不總是客戶端應用程序和服務器之間的通信已完成。 檢查網絡 - >握手正確但不能交換數據。

在服務器端,我做了2個系統:一個在請求servlet的過濾器中,另一個在websocket端點中。 每個請求到達服務器並進行握手,但有時@OnOpen不會被調用,即使wss升級到101.那可能怎麼樣?試圖更新到Tyrus 1.12(payara使用1.11),並將其降級到1.8.1(這是運行Glassfish 4.1u13使用的版本),但沒有任何反應。

我該如何調試此行爲?

+0

我打算建議你在Payara Github上打開一個問題,但我可以看到你已經做到了!如果其他人有同樣的問題,這個問題的鏈接在這裏:https://github.com/payara/Payara/issues/536 – Mike

回答