Vaadin 更改默认会话过期通知?

Vaadin Change the default Session Expired Notification?

Vaadin 7.6.2

如何更改默认会话过期通知;消息和通知类型?

要更改会话过期消息,您需要创建自己的 SystemMessagesProvider,并在其中定义它。例如,在 servlet 部署中,您可以执行以下操作:

@WebServlet(urlPatterns = "/*", name = "MyUIServlet", asyncSupported = true)
@VaadinServletConfiguration(ui = MyUI.class, productionMode = false)
public static class MyUIServlet extends VaadinServlet {

    @Override
    protected void servletInitialized() throws ServletException {
        super.servletInitialized();

        CustomizedSystemMessages messages = new CustomizedSystemMessages();
        messages.setSessionExpiredCaption("Session expired caption");
        messages.setSessionExpiredMessage("Session expired more detailed message");

        getService().setSystemMessagesProvider(e -> messages);

    }
}

没有更改通知类型的内置方法。当然,您可以使用 css 对其进行样式设置,但样式也会影响其他系统通知。