jsp和js之间的Java EE HttpSession通信

时间:2013-12-23 14:40:07

标签: javascript jsp java-ee

我想动态地在网页中添加一些数据。我有一个HttpSessionListener来保持所有打开的会话。

public class SessionListener implements HttpSessionListener {

ArrayList<HttpSession> sessions = new ArrayList<HttpSession>();

@Override
public void sessionCreated( HttpSessionEvent sessionEvent ) {
    sessions.add( sessionEvent.getSession() );
}

@Override
public void sessionDestroyed( HttpSessionEvent sessionEvent ) {
    sessions.remove( sessionEvent.getSession() );
}

public void sendToAll( Info info ) {
    for( HttpSession session: sessions ) {
        //send something to all connection clients.
    }
}

}

如何从JavaScript客户端获取此消息?

1 个答案:

答案 0 :(得分:0)

在我看来,你做的事情就像在每个会话(或pojos或StringBuilder的列表)上放置一个字符串,并在你的jsp中你正在模仿这个值,下次刷新JSP页面时的值你推开会话就会出现。

如果你想实现类似http推送的东西,那么我认为你需要结合其他一些技术,无论是客户端ajax轮询还是彗星。