首页 > 解决方案 > 如何从.class 向@ServerEndpoint 发送消息

问题描述

我不知道如何向@ServerEndpoint 发送消息。我想从不同的项目向包含@ServerEndpoint 的项目发送一条消息。下面的@ServerEndpoint 代码...

@ServerEndpoint("/posluzitelj")
@Stateless
public class Posluzitelj {
    static Queue<Session> queue = new ConcurrentLinkedQueue<>();

    public static void send(String message) {
       
    }

    @OnMessage
    public void onMessage(String message) {

    }

    @OnOpen
    public void openConnection(Session session) {
        queue.add(session);
    }

    @OnClose
    public void closedConnection(Session session) {
        queue.remove(session);
    }

    @OnError
    public void error(Session session, Throwable t) {
        queue.remove(session);
    }
    
}

所以,我想通过另一个项目类触发 onMessage 函数。我怎样才能做到这一点?另外,我不想使用javascript!我想用java语言进行交流。

标签: javasocketswebsocketglassfishendpoint

解决方案


使用@ClientEndpoint 注释解决了这个问题。链接:ServerEndpoint


推荐阅读