未检测到自定义 SpringVaadinServlet
Custom SpringVaadinServlet not detected
我正在尝试在我的 Vaadin 应用程序(使用 Spring 启动)中使用自定义 SpringVaadinServlet
。这是一个示例应用程序,其中未检测到 SpringVaadinServlet
。我已经阅读了 Spring Vaadin 教程,但仍然无法正常工作。这是代码(我没有 XML conf):
@SpringBootApplication
public class VaadinSb2Application {
public static void main(String[] args) {
SpringApplication.run(VaadinSb2Application.class, args);
}
@Configuration
@EnableVaadin
public class AppConfig {}
@SpringUI
public class MyUI extends UI {
private static final long serialVersionUID = 1L;
@Override
protected void init(VaadinRequest request) {
setContent(new Label("Welcome!"));
}
}
@WebServlet(urlPatterns = "/*", name = "MyServlet", asyncSupported = true)
public static class MyServlet extends SpringVaadinServlet {
private static final long serialVersionUID = 1L;
public MyServlet() {
System.out.println("servlet constr");
}
@Override
protected void servletInitialized() throws ServletException {
super.servletInitialized();
System.out.println("servlet init");
}
}
}
以下是 Vaadin 文档的链接:
http://vaadin.github.io/spring-tutorial/
https://vaadin.com/docs/-/part/framework/advanced/advanced-spring.html
我使用 Spring Boot 1.4.2 和最新的 Vaadin 版本。
当您使用 Spring Boot with Vaadin 时,您不应使用 @WebServlet 注释注册 servlet。以下应该适用于覆盖默认 Vaadin Spring Boot servlet:
@Component("vaadinServlet")
public class MySpringVaadinServlet extends SpringVaadinServlet {
}
我正在尝试在我的 Vaadin 应用程序(使用 Spring 启动)中使用自定义 SpringVaadinServlet
。这是一个示例应用程序,其中未检测到 SpringVaadinServlet
。我已经阅读了 Spring Vaadin 教程,但仍然无法正常工作。这是代码(我没有 XML conf):
@SpringBootApplication
public class VaadinSb2Application {
public static void main(String[] args) {
SpringApplication.run(VaadinSb2Application.class, args);
}
@Configuration
@EnableVaadin
public class AppConfig {}
@SpringUI
public class MyUI extends UI {
private static final long serialVersionUID = 1L;
@Override
protected void init(VaadinRequest request) {
setContent(new Label("Welcome!"));
}
}
@WebServlet(urlPatterns = "/*", name = "MyServlet", asyncSupported = true)
public static class MyServlet extends SpringVaadinServlet {
private static final long serialVersionUID = 1L;
public MyServlet() {
System.out.println("servlet constr");
}
@Override
protected void servletInitialized() throws ServletException {
super.servletInitialized();
System.out.println("servlet init");
}
}
}
以下是 Vaadin 文档的链接: http://vaadin.github.io/spring-tutorial/ https://vaadin.com/docs/-/part/framework/advanced/advanced-spring.html
我使用 Spring Boot 1.4.2 和最新的 Vaadin 版本。
当您使用 Spring Boot with Vaadin 时,您不应使用 @WebServlet 注释注册 servlet。以下应该适用于覆盖默认 Vaadin Spring Boot servlet:
@Component("vaadinServlet")
public class MySpringVaadinServlet extends SpringVaadinServlet {
}