【发布时间】:2013-10-13 18:18:35
【问题描述】:
我有一个 Wicket 6.10.0 Web 应用程序。我想实现一个计时器来显示当前用户会话中的剩余时间。一些东西链接这个: http://jsfiddle.net/justinobney/uZMGD/
我的页面页脚中有一个 Wicket Label。此标签使用 JavaScript 将时间从例如 5 分钟倒计时到 0 分 0 秒。每次请求都应刷新此倒计时(标签)。
现在的问题是如何做到这一点?
在我添加的init() 方法中,AbstractRequestCycleListener 会通知我每个结束请求,如下所示:
getRequestCycleListeners().add(new AbstractRequestCycleListener() {
@Override
public void onEndRequest(RequestCycle cycle) {
super.onEndRequest(cycle);
System.out.println("End Request - here i would like to refresh somehow the label");
}
});
但我不知道如何将此消息发送到标签以刷新自身。有什么想法吗?
* 编辑:* 我有一个 SPA:
<body>
lots of AJAX components here
<div wicket:id="footer">Footer always stays here. <br />
Session timeout in: <span wicket:id="sessionTimeoutLabel">countdown here</span>
</div>
</body>
倒计时有点像这样:http://jsfiddle.net/justinobney/uZMGD/
现在在每个 AJAX 请求上,我都需要 sessionTimeoutLabel 标签来重新渲染以开始从 600 秒到 0 的计数。
【问题讨论】:
标签: java session timeout refresh wicket