Как использовать освежающий аддон в vaadin?
Я пытаюсь использовать переподготовку аддона в vaadin. Но метод обновления никогда не выполняется. Что мне не хватает?
@VaadinUI
@PreserveOnRefresh
public class RootUI extends UI {
@Override
protected void init(VaadinRequest request) {
REFRESHER.setRefreshInterval(500);
REFRESHER.addListener(new ChatRefreshListener());
addExtension(REFRESHER);
}
public static final Refresher REFRESHER = new Refresher();
public class ChatRefreshListener implements RefreshListener {
@Override
public void refresh(final Refresher source) {
System.out.println("test"); //this is never executed
}
}
}
@Configuration
@ComponentScan
@EnableAutoConfiguration
public class MyApp extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(MyApp.class);
}
}
<vaadin.version>7.4.0.alpha2</vaadin.version>
1 ответ
Решение
Во-первых, использование расширения в константе в лучшем случае очень опасно, но, скорее всего, оно не сработает.
Но самое главное, я отказался от Refresher в пользу UI.setPollInterval()
который был введен в Vaadin 7.1. Ваадин 7.2 (я думаю) ввел PollListener
, так что теперь вы получаете события для каждого опроса.
Я полагаю, что я должен сделать это оскорбление явным сейчас, когда Refresher, наконец, на 100% интегрирован в Vaadin