java - Tomcat websocket 关闭连接

标签 java tomcat websocket

我在 Tomcat 上运行简单的 websocket 服务器:

package server.ws;

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




@ServerEndpoint("/websocketendpoint")

public class WsServer {

    @OnOpen
    public void onOpen(){
        System.out.println("Open Connection ...");
    }

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

    @OnMessage
    public String onMessage(String message){
        System.out.println("Message from the client: " + message);
        String echoMsg = "Echo from the server : " + message;
        return echoMsg;
    }

    @OnError
    public void onError(Throwable e){
        e.printStackTrace();
    }

}

连接到我的服务器的客户端提示 Tomcat 在传输回显后关闭 session 。如何让服务器在回显后不关闭连接?

最佳答案

我不确定,但我猜 onMessage 没有返回值。 对我来说,下面的代码工作正常,我有任何问题

@OnMessage
public void message(final String message, final javax.websocket.Session session) throws IOException {
    for (final Session s : session.getOpenSessions()) {
        final Basic endpoint = s.getBasicRemote();
        endpoint.sendText(message);
    }
}

关于java - Tomcat websocket 关闭连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56493961/

相关文章:

java - 使用 Tomcat 7 从智能卡读取用户名

eclipse - 运行eclipse europa的问题

javascript - 套接字 IO V0.7 : Where to put flashsockets SWF file?

node.js - WebSockets 和 Apache 代理 : how to configure mod_proxy_wstunnel?

java - 如何使用 NFC 以编程方式隐藏 Android SDK 中的按钮

java - org.json.JSONException : JSONArray[0] is not a JSONObject

java - 如何监控我的连接去向?

javascript - Socket.io 不从客户端向服务器发送数据

java - System.nanoTime() 似乎损坏了。需要检查代码效率的替代方案

java - 如何在不使用 .stopAndWait 方法的情况下使用 Javafx 中警报中的按钮?