- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我按照 Vaadin 教程 ( Creating Collaborative Views ) 进行广播事件并注册。
Registration eventRegistration;
@Override
protected void onAttach(AttachEvent attachEvent) {
log.debug("In attach...");
UI ui = attachEvent.getUI();
eventRegistration= Broadcaster.register(
"eventName",
message -> ui.access(() -> {
log.debug("Request to refresh grid...");
presenter.refreshGrid();
ui.push();
}));
}
@Override
protected void onDetach(DetachEvent detachEvent) {
log.debug("In detach...");
if(eventRegistration != null) {
eventRegistration.remove();
eventRegistration = null;
}
}
一切正常,除了刷新页面时,
onDetach()
中的逻辑不被执行。但是,刷新后,您将输入
onAttach()
方法。因此,您实际上将注册几个“相同”的监听器,而无需删除前一个监听器,并且实际上获得了两倍的监听器。
onDetach()
例如,仅当您转到另一个菜单项时才能访问方法。
最佳答案
onDetach
方法应该最终被调用。
当您关闭或刷新选项卡时,不会向服务器发送任何事件,因此服务器不知道应该分离旧 UI。
这是heartbeat requests的地方进来。UIs默认每5分钟发送一次心跳请求,如果服务器发现旧UI错过了三个心跳,它将被分离。或者,它会在 session 到期时被分离。
换句话说,onDetach
方法应该在大约 20 分钟后调用。
The reason no event is sent to the server when the tab is closed or refreshed is that this could prevent the tab from refreshing/closing while the request is being handled, which is bad user experience.此外,这不包括计算机关闭或网络断开连接的情况。
有一种叫做 Beacon API 的东西,可用于在选项卡刷新或关闭时通知服务器,而不会导致浏览器延迟。有an issue使用它来立即分离 UI。
关于瓦丁 14 : remove broadcast registration on page refresh,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67702535/
我在整个页面上都有几个组合框。并且有一个组合框我想要响应。 假设我有包含它的布局,就像这样: public class MyLayout extends CssLayout ... { ...
我正在使用 7th Vaadin 并看到以下问题:当网格为空时,它的多选复选框被打开: 如何解决? 谢谢。 最佳答案 你应该能够在没有元素时隐藏它,并在有一点hacking和theme时显示它。更新。
如何在 Vaadin 中获取 HTML Elmement(或 DOM)? 在 GWT 中我可以使用 DOM.getElementById("myId");我可以通过 setId() 方法在我的 Vaa
我正在尝试使用 vaadin,并想在我的 vaading 7 项目中使用甘特聊天插件。 https://vaadin.com/directory#addon/vaadin-gantt-diagram:
在 Vaadin 8 中: UI.getCurrent().setErrorHandler(e -> handleError(e)); setErrorHandler Vaadin 11 中不存在,我
这只是一个简单的测试应用程序 import br.com.elf.ui.IndexApplication; public class IndexApplication extends Applicat
参见http://demo.vaadin.com/sampler/#ui/structure/popup-view 我可以创建一个弹出窗口,如 vaadin 采样器中所示,但如何将其居中于窗口中间?我
我正在开发一个由 springBoot 引导的 Vaadin 应用程序。当我今天早上尝试构建应用程序时(自上次成功构建以来没有执行任何更改),我得到了以下堆栈跟踪: Using Gradle Vaad
如何获取组件上传的上传按钮监听器?这是因为我想在单击上传按钮时验证其他字段。我试过添加... upload.addListener(new Upload.StartedListener() {});
我有一个bean,如下: public class Step implements Serializable { private int stepSequence; private b
我是 Java 组件基础框架中的新成员,尤其是 vaadin。在使用这个框架之前,我使用的是 struts 2。 所以当我想查询一些表格时,我有一个搜索框,包含许多文本字段。当用户单击搜索按钮时,来自
在我的 Vaadin 应用程序中的某个地方,我使用第二个浏览器连接后立即收到此异常 Caused by: java.lang.RuntimeException: A connector with id
Vaadin 7 或 Java 一般是否可以检查浏览器是否有嵌入式 pdfreader? 我需要知道这一点,因为这取决于我打开 pdf 的方式。 最佳答案 不幸的是,没有办法一致地检查浏览器是否支持查
我有一个 TextField 组件并在其上添加了 ValueChangeListener。 @Theme("myTheme") @SuppressWarnings("serial") @Title("
是否可以从 Vaadin Portlet 调用 Java Script 函数?例如,我有一个 Portlet 和一个包含函数的 JavaScript 文件:alert(message)。我想调用该函数
我使用 vaadin 和 OSGi 创建模块化应用程序。经过长时间的斗争,我能够成功部署应用程序。但是,我无法加载样式。当我尝试访问http://localhost:8080/myapp/VAADIN
我能够将 Vaadin 模块集成到我们基于 Spring 的应用程序中。集成后,我想运行甘特图的演示,它是 Vaadin 的附加组件,并在 github here 上找到了它。 。文件夹内有一个演示项
我正在使用 Vaadin 7。当我尝试将 html 内容添加到 CustomLayout 时,它不会在 div 元素内生成段落。这是输入: Profile
我有一个包含换行符(“\r”)的传入文本字符串。 当我输出它时: System.out.println(myString) , 回车被解释。 但是,当我将字符串设置为标签的内容时,它会忽略回车。 如何
我按照 Vaadin 教程 ( Creating Collaborative Views ) 进行广播事件并注册。 Registration eventRegistration; @Override
我是一名优秀的程序员,十分优秀!