session 用户问题

现在做了个在线用户管理,麻烦的是:管理员登陆后可以对在线用户进行踢出,
我用HttpSessionBindingListener实现其它功能,用application来保存在线用户,
但是我老大的意思是"踢出在线用户"就是让被选中的用户session清空.
网上查了很久,有说用jsessionid来取session,但是又有说这个方法已经被取消了,因为安全机制问题.
又有说在线不会那么精确
不知道大家有什么办法来实现?或者这个想法是有问题的
[b]问题补充:[/b]
哈哈解决了,用application存放用户id和对应的session, 要踢出哪个用户,直接根据用户id取得对应session,然后invalidate(),就是选中的用户失效!

有个Tomcat Probe里面就有清除session的功能,可以去看看如何实现的
http://www.lambdaprobe.org

protected ModelAndView handleContext(String contextName, Context context, HttpServletRequest request, HttpServletResponse response)
    throws Exception
{
    if(request.getMethod().equalsIgnoreCase("post"))
    {
        Manager manager = context.getManager();
        Enumeration enumeration = request.getParameterNames();
        do
        {
            if(!enumeration.hasMoreElements())
                break;
            String sessionID = (String)enumeration.nextElement();
            if("on".equals(request.getParameter(sessionID)))
            {
                Session session = manager.findSession(sessionID);
                if(session != null && session.isValid())
                    session.expire();
            }
        } while(true);
    } else
    {
        String sessionID = RequestUtils.getStringParameter(request, "sid");
        Session session = context.getManager().findSession(sessionID);
        if(session != null)
            [b]session.expire();[/b]
    }
    return new ModelAndView(new InternalResourceView(getViewName()));
}