java - javax.websocket.Session api

标签 java eclipse gradle websocket java-ee-7

我需要检索一个 session ID,但是Eclipse告诉我
“未为 session 类型定义方法getId()”

这是标题:

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()仍未定义。

如果有人有主意!谢谢。

最佳答案

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

使用org.glassfish.main.extras:glassfish-embedded-all:4.1代替。
奇怪的。

关于java - javax.websocket.Session api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29770649/

相关文章:

java - JVM 是否通过在同一方法中存储相似方法调用的结果来修复我的低效代码?

java - Hibernate 的重复键问题

java - 在 bitbucket 管道上执行 gradle 后出现 "Could not complete execution for Gradle Test Executor 2"错误

android - android DBAdapter 类错误

eclipse - 导入的 JSF 项目缺少用户库 JAR

java - 基本的 Android 单元测试

java - 比较两个 Unicode 字符串时 AssertJ 错误失败

java - 整型和浮点型字面量指向和使用?

java - 项目文件管理

android - 如何修复 Android 项目发布构建 proguard 错误 "Duplicate zip entry"?