Java Firefox可以';t在ws://localhost:8080/websocket上建立与服务器的连接
首先,很抱歉重复了这个问题,但我没有得到我想要的答案。我在控制台上得到了上面的错误 Firefox无法在ws://localhost:8080/websocket上建立与服务器的连接 这是我的jsp页面Java Firefox可以';t在ws://localhost:8080/websocket上建立与服务器的连接,java,websocket,Java,Websocket,首先,很抱歉重复了这个问题,但我没有得到我想要的答案。我在控制台上得到了上面的错误 Firefox无法在ws://localhost:8080/websocket上建立与服务器的连接 这是我的jsp页面 var username; var wsUri = "ws://localhost:8080/chat/websocket"; var websocket = new WebSocket(wsUri); websocket.onopen = function (evt
var username;
var wsUri = "ws://localhost:8080/chat/websocket";
var websocket = new WebSocket(wsUri);
websocket.onopen = function (evt) {
onOpen(evt);
};
websocket.onmessage = function (evt) {
onMessage(evt);
};
websocket.onerror = function (evt) {
onError(evt);
};
var output = document.getElementById("output");
function join() {
alert('join start');
username = textField.value;
websocket.send(username + " joined");
alert('join end');
}
function send_message() {
alert('sendmessage start');
websocket.send(username + ": " + textField.value);
alert('sendmessage end');
}
function onOpen() {
alert('onopen start');
writeToScreen("Connected to " + wsUri);
alert('onopen end');
}
function onMessage(evt) {
console.log("onMessage");
writeToScreen("RECEIVED: " + evt.data);
if (evt.data.indexOf("joined") !== -1) {
userField.innerHTML += evt.data.substring(0, evt.data.indexOf(" joined")) + "\n";
} else {
chatlogField.innerHTML += evt.data + "\n";
}
}
function onError(evt) {
writeToScreen('<span style="color: red;">ERROR:</span> ' + evt.data);
}
function writeToScreen(message) {
output.innerHTML += message + "<br>";
}
var用户名;
var wsUri=“ws://localhost:8080/chat/websocket”;
var websocket=新的websocket(wsUri);
websocket.onopen=函数(evt){
onOpen(evt);
};
websocket.onmessage=函数(evt){
onMessage(evt);
};
websocket.onerror=函数(evt){
onError(evt);
};
var output=document.getElementById(“输出”);
函数连接(){
警报(“加入开始”);
用户名=textField.value;
发送(用户名+“已加入”);
警报(“连接端”);
}
函数send_message(){
警报(“发送消息开始”);
发送(用户名+“:”+textField.value);
警报(“发送消息结束”);
}
函数onOpen(){
警报(“开启启动”);
writeToScreen(“连接到”+wsUri);
警报(“打开端”);
}
消息函数(evt){
log(“onMessage”);
写入屏幕(“接收:+evt.data”);
如果(evt.data.indexOf(“连接”)!=-1){
userField.innerHTML+=evt.data.substring(0,evt.data.indexOf(“已加入”))+“\n”;
}否则{
chatlogField.innerHTML+=evt.data+“\n”;
}
}
函数onError(evt){
writeToScreen('错误:'+evt.data);
}
功能写入屏幕(消息){
output.innerHTML+=message+“
”;
}
这是我的java类
@ServerEndpoint(value = "/websocket")
public class ChatEndpoint {
private static final Set < Session > peers = Collections.synchronizedSet(new HashSet < Session > ());
@OnOpen
public void onOpen(Session peer) {
System.out.println("I am onOpen");
peers.add(peer);
}
@OnClose
public void onClose(Session peer) {
System.out.println("I am onClose");
peers.remove(peer);
}
@OnMessage
public void message(String message, Session client) throws IOException, EncodeException {
System.out.println("I am message");
for (Session peer: peers) {
peer.getBasicRemote().sendObject(message);
}
}
}
@ServerEndpoint(value=“/websocket”)
公共类聊天端点{
private static final Setpeers=Collections.synchronizedSet(新HashSet());
@奥诺彭
公共开放(会话对等){
System.out.println(“我是onOpen”);
peers.add(peer);
}
@一次
公共void onClose(会话对等方){
System.out.println(“我是onClose”);
删除(peer);
}
@OnMessage
公共无效消息(字符串消息、会话客户端)引发IOException、EncodeException{
System.out.println(“我是消息”);
用于(会话对等方:对等方){
peer.getBasicRemote().sendObject(消息);
}
}
}
我正在使用Maven repository并尝试运行这个项目,以便在java中进行客户端到客户端的交互