[英]WebSocket handshake: Unexpected response code: 404 -
我正在学习websockets并遵循这里的说明: http : //www.oracle.com/webfolder/technetwork/tutorials/obe/java/HomeWebsocket/WebsocketHome.html
我使用tomcat v8.0.21来部署我的webapp但是出现以下错误
当我访问webapp时,我的JavaScript项目看起来很好:我的localhost并访问WebSocketJavaScriptProject
虽然在控制台窗口中出现错误:WebSocket连接到'ws:// localhost:8080 / WebsocketHome / actions'失败:WebSocket握手期间出错:意外响应代码:404
我的代码住在这里: https : //github.com/darkcloudi/WebSocketProject
我的应用程序和Oracle上的示例之间的区别是我将它拆分为两个项目一个服务和另一个Web应用程序。
我无法弄清楚为什么我会得到404作为服务.war文件被称为WebsocketHome。 什么会导致这个问题? 通常找不到404所以猜测它无法找到服务,我敢肯定我做的事情很愚蠢但是无法弄清楚问题出在哪里
谢谢
握手期间发生错误,因为Tomcat有自己的websi api。 因此,您可能在pom.xml中添加了JSR实现或类似javax.websocket-api的东西,在运行时会出现冲突。
尽量不要将Websocket-library导出到您的Web服务器,因此它使用自己的实现。
如果使用maven,请按提供的方式设置websocket依赖项:
<!-- Provided Websocket API, because tomcat has its own implementation -->
<dependency>
<groupId>javax.websocket</groupId>
<artifactId>javax.websocket-api</artifactId>
<version>1.1</version>
<scope>provided</scope>
</dependency>
我也有同样的问题。 尝试删除$ JAVA_HOME / lib文件夹中包含websocket的不需要的jar。 然后只添加您在serverendpoint文件中导入的内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.