Springboot、Vaadin 和 RestController

Springboot, Vaadin and RestController

我用 spring 引导创建了一个新项目,其中包括 vaadin 和 springmvc。

我添加了一个 restcontroller class 和一个用 @Route 注释的 vaadin 视图 class,但是在尝试访问该视图时我收到一个空白页面和许多失败的 http 请求使用 405 访问代码访问 /VAADIN/frontend 路径。

删除 restcontroller 时,vaadin 视图有效。

解决方案是将 servlet 映射添加到 vaadin 资源:

@WebServlet(
    urlPatterns = {
            "/VAADIN/*", "/frontend/*"
    },
    initParams = {
            @WebInitParam(name = "productionMode", value = "false")
    })
public class MyServlet extends VaadinServlet {}

不要忘记添加 @ServletComponentScan 注释。