iteye_14674
2011-08-11 10:33
浏览 249
已采纳

请教个dwr的问题

怎么从ScriptSession取得当前用户,实现向特定的用户发送脚本? 下面是我的代码,要怎么改造?
FacesContext facesContext = FacesContext.getCurrentInstance();
ServletContext servletContext = (ServletContext) facesContext.getExternalContext().getContext();
ServerContext sctx = ServerContextFactory.get(servletContext);
Collection sessions = sctx.getAllScriptSessions();
Util pages = new Util(sessions);
pages.addFunctionCall("initD", subject, "im.xhtml?users=" + java.net.URLEncoder.encode(users));

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

  • li28544071 2011-08-11 11:56
    最佳回答

    [code="java"]
    /**

    • 根据用户id获得指定用户的页面脚本session
    • @param userid
    • @param request
    • @return */ @SuppressWarnings("unchecked") public ScriptSession getScriptSession(String userid, HttpServletRequest request) { ScriptSession scriptSessions = null; Collection sessions = new HashSet(); sessions.addAll(ServerContextFactory.get(request.getSession().getServletContext()).getScriptSessionsByPage("/chat/index.jsp")); for (ScriptSession session : sessions) { String xuserid = (String) session.getAttribute("userid"); if (xuserid != null && xuserid.equals(userid)) { scriptSessions = session; } } return scriptSessions; } [/code]
    评论
    解决 无用
    打赏 举报