javax.websocket.Session API

Posted

技术标签:

【中文标题】javax.websocket.Session API【英文标题】:javax.websocket.Session api 【发布时间】:2015-04-21 11:16:08 【问题描述】:

我需要检索会话 ID,但 Eclipse 告诉我 “方法 getId() 未定义 Session 类型”

这里是标题:

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

这里是错误:

@OnOpen
public void onOpen(Session session)
    System.out.println(session.getId() + " has opened a connection"); 
    //session.getId() is undefined.
    try 
        session.getBasicRemote().sendText("Connection Established");
        //same here getBasicRemote is undefined
     catch (IOException ex) 
        ex.printStackTrace();
    

我使用 gradle 构建我的项目。我想我包括了所有的依赖。

dependencies 
compile group: 'commons-collections', name: 'commons-collections', version: '3.2'
compile 'org.glassfish.main.extras:glassfish-embedded-all:4.0-b72'
compile 'javax:javaee-api:7.0'
testCompile group: 'junit', name: 'junit', version: '4.+'

然后我运行 gradle eclipse。但是 getId() 仍然未定义。

如果有人有想法!谢谢。

【问题讨论】:

【参考方案1】:

覆盖 javax websocket api 的是 'org.glassfish.main.extras:glassfish-embedded-all:4.0-b72' 库。

改为使用 org.glassfish.main.extras:glassfish-embedded-all:4.1。 很奇怪。

【讨论】:

以上是关于javax.websocket.Session API的主要内容,如果未能解决你的问题,请参考以下文章

不可序列化的会话 websocket java ee

在python中,a+=a-=a的值是多少?

20170924 a20170924 a

a++和++a的区别

逻辑代数

python运算符