我在Tomcat 7中实现了一个带有javascript客户端的websocket连接。
它运行良好,除了一个场景:当我一个接一个地打开几个连接(通过刷新客户端)然后关闭所有连接时,Tomcat崩溃。
调试之后,我发现导致Tomcat崩溃的函数是WsOutbound对象的close()函数。
这是我的代码:
试试{
m_tickMesageInbound.getWsOutbound()。close(0,null);
} catch(IOException e){
logger.debug(“关闭输出时出错”);
}
(m_tickMesageInbound是一个扩展MessageInbound的对象)
我有一个理论,我试图关闭的连接已经关闭,从而导致错误,但没有接口来检查这一点。
我已经尝试覆盖messageInbound类中的onClosed()函数,并设置代码以跳过关闭函数,如果它发生,但这没有帮助。
重要的是要注意Tomcat完全崩溃,即脱机,没有日志来解释问题。关于如何解决这个问题的任何想法?
答案 0 :(得分:0)
不留下日志来解释问题
您可以在tomcat / bin文件夹中找到hs_err.log。这将有助于您进一步调试问题。