2016-05-17 107 views
0

我使用spring websocket通过扩展TextWebSocketHandler和HttpSessionHandshakeInterceptor类。使用下载的tomcat(7.0.55版)没有问题。但在Ubuntu(从apt-get安装)中使用tomcat作为服务(版本7.0.52),在服务器启动期间出现以下问题。ConcurrentMessageDigest类未找到异常

ERROR DispatcherServlet:492 - Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.web.servlet.handler.SimpleUrlHandlerMapping#0': Cannot resolve reference to bean ......

经过一番搜索,它已经发现,我已经使用Tomcat嵌-websocket.jar和下载Tomcat的嵌入-的WebSocket-7.0.68.jar并复制到项目lib文件夹。服务器启动成功。但是当尝试建立websocket连接时发生以下问题。它说引起:java.lang.ClassNotFoundException:org.apache.tomcat.util.security.ConcurrentMessageDigest

nested exception is java.lang.NoClassDefFoundError: org/apache/tomcat/util/security/ConcurrentMessageDigest at org.springframework.web.socket.server.support.WebSocketHttpRequestHandler.handleRequest...

无法找到解决方案。请帮忙。

+0

我是看不见的......! –

回答

0

它确实看起来像你的tomcat7实例的版本低于你使用的lib(tomcat-embed-websocket-7.0.68.jar)。

尽量准确地下载Tomcat的相同版本: http://repo1.maven.org/maven2/org/apache/tomcat/tomcat/7.0.68/

+0

这是个老问题。对不起,我现在无法测试它。当时没有解决这个问题。下次试试你的建议。谢谢! –