WebSocket握手:意外的响应代码:404-

我正在学习有关websocket的信息,并按照此处的说明进行操作:http

:

//www.oracle.com/webfolder/technetwork/tutorials/obe/java/HomeWebsocket/WebsocketHome.html

我正在使用tomcat v8.0.21部署我的Web应用程序,但出现以下错误

当我访问Web应用程序时,我的JavaScript项目看起来很好:我的本地主机并访问WebSocketJavaScriptProject

虽然在控制台窗口中出现以下错误:WebSocket与“ ws:// localhost:8080 / WebsocketHome /

actions”的连接失败:WebSocket握手期间出错:意外的响应代码:404

我的代码在这里:https :

//github.com/darkcloudi/WebSocketProject

我的应用程序与Oracle上的示例之间的区别在于,我将其分为两个项目,一个是服务,另一个是Webapp。

我无法弄清楚为什么要得到404,因为服务.war文件称为WebsocketHome。有什么想法会导致此问题吗?通常找不到404,所以猜测它找不到服务,我确定自己做的很蠢,但是无法弄清楚问题出在哪里

谢谢

回答:

握手期间会发生错误,因为Tomcat有自己的websocket

API。因此,您可能在pom.xml中添加了JSR实现或类似于javax.websocket-api的东西,在运行时会发生冲突。

尝试不要将Websocket库导出到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>

以上是 WebSocket握手:意外的响应代码:404- 的全部内容, 来源链接: utcz.com/qa/426455.html

回到顶部