Java 瓦丁春天安全酒店
我从我发现的一个例子开始工作,下面是Git回购的链接: 它工作得很好,这正是我需要的,除了一件事:我需要服务器推送 以下是我迄今为止所做的工作:Java 瓦丁春天安全酒店,java,spring-security,vaadin8,Java,Spring Security,Vaadin8,我从我发现的一个例子开始工作,下面是Git回购的链接: 它工作得很好,这正是我需要的,除了一件事:我需要服务器推送 以下是我迄今为止所做的工作: 添加了Vaadin推送依赖项 在MainUI.init()方法的开头添加了以下行: 将以下字段添加到MainUI类: Label time = new Label(); Timer timer; private void updateTime() { access(() -> time.setValue(String.format("
- 添加了Vaadin推送依赖项
- 在MainUI.init()方法的开头添加了以下行:
- 将以下字段添加到MainUI类:
Label time = new Label(); Timer timer;
private void updateTime() { access(() -> time.setValue(String.format("The server-side time is %s", LocalTime.now().format(DateTimeFormatter.ofPattern("HH:mm:ss"))))); }
- 将以下方法添加到MainUI类:
Label time = new Label(); Timer timer;
private void updateTime() { access(() -> time.setValue(String.format("The server-side time is %s", LocalTime.now().format(DateTimeFormatter.ofPattern("HH:mm:ss"))))); }
- 最后,在MainUI.init()方法的末尾添加了以下内容:
public void attach() {
getPushConfiguration().setTransport(Transport.WEBSOCKET);
getPushConfiguration().setPushMode(PushMode.AUTOMATIC);
}
并从init()
这解决了挂起问题,但推送不起作用-没有错误,只是根本不显示时间
我还尝试将@Push
注释添加到MainUI
。这将导致与之前相同的行为-刷新时冻结
我怎样才能解决这个问题?欢迎提出任何建议。尝试以下步骤:
@Push
添加到MainUI.java文件
@Push(transport=transport.WEBSOCKET,value=PushMode.AUTOMATIC)
getPushConfiguration().setTransport(Transport.WEBSOCKET);
getPushConfiguration().setPushMode(PushMode.AUTOMATIC)代码>
@PreDestroy
以在从mainUI导航时退出计时器
@PreDestroy
无效销毁(){
timer.cancel();
}
我遇到了完全相同的问题,我的解决方案是实现。查看更多信息。谢谢您的提示。不幸的是,我看到了同样的行为:(