我需要检索一个 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/