日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

spring mvc + tomcat 實現(xiàn) websocket 異常 connection abort: socket write error

 一本正經(jīng)地胡鬧 2019-08-16

本文所使用的技術(shù)為spring mvc + tomcat7實現(xiàn)的tomcat技術(shù),在刷新頁面后出現(xiàn)異常

  • 錯誤關(guān)鍵字

    java.util.concurrent.ExecutionException: java.net.SocketException:
    Software caused connection abort: socket write error]

  • 異常方法為:public void handleTransportError(WebSocketSession webSocketSession, Throwable e)
    throws Exception {}
    如下圖:

異常方法

  • 運(yùn)行報錯日志如下:

22:26:46.360 [http-bio-8080-exec-2] ERROR com.webchat.websocket.ChatWebSocketHandler -  [] 
java.net.SocketException: Software caused connection abort: socket write error] 


22:26:46.361 [http-bio-8080-exec-2] ERROR com.webchat.websocket.ChatWebSocketHandler -  
[] [websocket 連接異常2,:->Message will not be sent because the WebSocket session has been closed]
  • 解決方案為:
    在html網(wǎng)頁中加入監(jiān)聽窗口事件后關(guān)閉websocket連接的函數(shù)

            window.onbeforeunload = function(event) {
                ws.onclose =function(){};
                ws.close();
            }

原因分析:

  • 該問題主要發(fā)生在頁面刷新的時候,ws連接實際已經(jīng)斷開,但前后臺均為做斷開操作,后臺一直保持連接,待前端斷開后,卻沒有釋放掉該連接,故后臺還在有狀態(tài)的監(jiān)聽使用故報錯。

  • 另連接時間過長瀏覽器自動切斷時也會出現(xiàn)此問題

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多