项目名在tomcat下是csa, websocket请求路径应该是没错的,但是websocket 被拒绝连接了,有大神能解决吗

tangjie344 2017-03-31 11:00:37
jsp代码

<!DOCTYPE html>
<html>
<head>
<title>Testing websockets</title>
</head>
<body>
<div>
<input type="submit" value="Start" onclick="start()" />
</div>
<div id="messages"></div>
<script type="text/javascript">
var webSocket = new WebSocket("ws://localhost:8080/csa/websocketTest");
webSocket.onopen = function(event) {
onOpen(event)
};

webSocket.onmessage = function(event) {
onMessage(event)
};
webSocket.onerror = function(event) {
onError(event)
};
function onMessage(event) {
document.getElementById('messages').innerHTML
+= '<br />' + event.data;
}

function onOpen(event) {
document.getElementById('messages').innerHTML
= 'Connection established';
}

function onError(event) {
alert(event.data);
}

function start() {
webSocket.send('hello');
return false;
}
</script>
</body>
</html>



后端代码

package csa_web;

import java.io.IOException;

import javax.websocket.OnClose;
import javax.websocket.OnMessage;
import javax.websocket.OnOpen;
import javax.websocket.Session;
import javax.websocket.server.ServerEndpoint;

@ServerEndpoint("/websocketTest")
public class WebSocketTest {
@OnMessage
public void onMessage(String message, Session session) throws IOException, InterruptedException {

// Print the client message for testing purposes
System.out.println("Received: " + message);

// Send the first message to the client
session.getBasicRemote().sendText("This is the first server message");

// Send 3 messages to the client every 5 seconds
int sentMessages = 0;
while (sentMessages < 3) {
Thread.sleep(5000);
session.getBasicRemote().sendText("This is an intermediate server message. Count: " + sentMessages);
sentMessages++;
}

// Send a final message to the client
session.getBasicRemote().sendText("This is the last server message");
}

@OnOpen
public void onOpen() {
System.out.println("Client connected");
}

@OnClose
public void onClose() {
System.out.println("Connection closed");
}
}

pom.xml
<dependency>
<groupId>javax.websocket</groupId>
<artifactId>javax.websocket-api</artifactId>
<version>1.0-rc5</version>
<scope>provided</scope>
</dependency>
报错信息



...全文
243 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
vkqiang 2017-03-31
  • 打赏
  • 举报
回复
断点一下程序看看
tianfang 2017-03-31
  • 打赏
  • 举报
回复
端口,你的csa发布在38080端口的服务器上,ws访问的是8080端口

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧