浏览 2144 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-04-01
修改SesssionManager,和Session类使得sessionId是有意义的,一般改成用户id!
Session类添加一个方法:
/** * czp 新增方法,sessionId为用户id * @param anId * @param anEvent * @return * @throws PushletException */ public static Session create(String anId,Event anEvent) throws PushletException { Session session; try { session = (Session) Config.getClass(SESSION_CLASS, "nl.justobjects.pushlet.core.Session").newInstance(); } catch (Throwable t) { throw new PushletException("Cannot instantiate Session from config", t); } // Init session session.id = anEvent.getField("userId");//sessionId为有意义的用户id session.controller = Controller.create(session); session.subscriber = Subscriber.create(session); return session; }
修改SessionManager类里面的createSession方法:
/** * Create new Session (but add later). * edit by czp */ public Session createSession(Event anEvent) throws PushletException { /* * 如果存在user,创建一个带有userid的session, * sessionId变成userid */ Session session = null; if(anEvent.getField("userId") != null && !("").equals(anEvent.getField("userId"))){ session = Session.create(createSessionId(),anEvent);//个性化方法,加入用户id }else{ session = Session.create(createSessionId()); } return session; }
这样就可以将sessionId变成有意义的id了,现在前台接收的p_id就是userId了. 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |