websocket的EndPoint如何访问HttpSession

想喝咖啡的貓 2014-03-04 10:54:47
RT,发现jsr356新规范中Endpoint的Session跟本就是一个独立的东西,如何在web项目中使用HttpSession?


package org.sl.action;

import org.apache.log4j.Logger;

import javax.websocket.*;
import javax.websocket.server.ServerEndpoint;

/**
* Created by shanl on 14-3-3.
*/
@ServerEndpoint(value="/echoendpoint")
public class EchoEndpoint {
static final Logger logger = Logger.getLogger(EchoEndpoint.class);

@OnOpen
public void start(Session session){
System.out.println("session "+session.getId()+" open.");
}

@OnMessage
public void process(Session session, String message){
System.out.println("rece:" + message);
RemoteEndpoint.Basic remote = session.getBasicRemote();
int c = Integer.valueOf(message);

try {
for (int i=1; i<=c; i++){
remote.sendText("response "+i);
Thread.sleep(500);
}
} catch (Exception e) {
logger.error(e.getMessage(), e);
}
}

@OnClose
public void end(Session session){
System.out.println("session "+session.getId()+" close.");
}

@OnError
public void error(Session session, java.lang.Throwable throwable){
System.err.println("session "+session.getId()+" error:"+throwable);
}
}


...全文
135 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧