Vaadin + Spring Boot 中的自定义 servlet

Custom servlet in Vaadin + Spring Boot

我正在尝试复制官方 Vaadin Dashboard Demo 的简化版本,但我正在使用 Spring Boot 来管理依赖项。

DashboardServlet.java 文件中,您将找到以下代码:

public class DashboardServlet extends VaadinServlet {
    @Override
    protected final void servletInitialized() throws ServletException {
        super.servletInitialized();
        getService().addSessionInitListener(new DashboardSessionInitListener());
    }
}

该演示使用自定义的 servlet。

问题:如何在Spring Boot 中实现?如何让 Spring 引导注入我的自定义 servlet class?

您必须创建名称为 vaadinServlet 的管理 bean,并且您想要扩展 SpringVaadinServlet class。这应该有效:

@Component("vaadinServlet")
public class MySpringVaadinServlet extends SpringVaadinServlet {

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