java - 瓦丁 7 : What is the simplest way to refresh a Vaadin View in 5 minute intervals?

标签 java events refresh polling vaadin7

我正在尝试对 Vaadin View 中的组件列表实现自动刷新。该列表从数据库获取其内容。我可以使用已经实现的按钮刷新列表。

但是,我想知道最简单的方法是什么,以便我已经拥有的此刷新事件能够以 5 分钟(300 000 毫秒)的间隔自动刷新?

这是我尝试过的方法,即使在我退出 View 后它也会不断刷新,所以它实际上不起作用。 我希望仅在显示特定 View 时以 5 分钟为间隔进行刷新。

UI myUI = UI.getCurrent();  

            myUI.setPollInterval(300000);
            myUI.addPollListener(event -> {
                refreshList();
            });

如何才能使导航到其他 View 后不会发生刷新?在 Vaadin 中是否有一些更简单的方法可以做到这一点?谢谢

最佳答案

你可以打电话

myUI.setPollInterval(300000);

当 View 被激活时,您通过调用禁用它

myUI.setPollInterval(-1);

当另一个 View 被激活时。如果您使用 Vaadin Navigator,那么您可以使用 ViewChangeListener 来处理轮询。

关于java - 瓦丁 7 : What is the simplest way to refresh a Vaadin View in 5 minute intervals?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32249435/

相关文章:

java - JSF 2.0 和 TransformerFactory

java - 无法派生模块描述符 : Provider {class X} not in module

JavaScript/浏览器 : when does event dispatching exactly happen?

objective-c - 如何确定哪个 UIControlEvents 类型导致了 UIEvent?

java - Eclipse 正在创建两个类文件

python - 你如何强制刷新 wx.Panel?

http - 浏览器的 "F5"和 "Ctrl + F5"刷新会产生什么请求?

java - Berkeley DB 的 GUI

java - 为什么我的整数增加了 2 而不是 1? java

java - 从 Spring EventListener 更新 Vaadin 8 UI