首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vaadin - productionMode on Spring Boot定制Servlet

Vaadin - productionMode on Spring Boot定制Servlet
EN

Stack Overflow用户
提问于 2017-01-11 07:03:34
回答 1查看 1.4K关注 0票数 1

我试着把我的项目放在生产模式,但没有运气:

启动日志中显示一切正常:

代码语言:javascript
复制
2017-01-09 09:26:24.453  INFO 80996 --- [           main] c.v.s.b.i.VaadinServletConfiguration     : Registering Vaadin servlet
2017-01-09 09:26:24.453  INFO 80996 --- [           main] c.v.s.b.i.VaadinServletConfiguration     : Servlet will be mapped to URLs [/vaadinServlet/*, /VAADIN/*]
2017-01-09 09:26:24.469  INFO 80996 --- [           main] c.v.s.b.i.VaadinServletConfiguration     : Setting servlet init parameters
2017-01-09 09:26:24.469  INFO 80996 --- [           main] c.v.s.b.i.VaadinServletConfiguration     : Set servlet init parameter [productionMode] = [true]
2017-01-09 09:26:24.470  INFO 80996 --- [           main] c.v.s.b.i.VaadinServletConfiguration     : Set servlet init parameter [resourceCacheTime] = [3600]
2017-01-09 09:26:24.470  INFO 80996 --- [           main] c.v.s.b.i.VaadinServletConfiguration     : Set servlet init parameter [heartbeatInterval] = [60]
2017-01-09 09:26:24.470  INFO 80996 --- [           main] c.v.s.b.i.VaadinServletConfiguration     : Set servlet init parameter [closeIdleSessions] = [true]
2017-01-09 09:26:26.260  INFO 80996 --- [           main] c.v.s.b.i.VaadinServletConfiguration     : Checking the application context for Vaadin UI mappings
2017-01-09 09:26:26.263  INFO 80996 --- [           main] c.v.s.b.i.VaadinServletConfiguration     : Registering Vaadin servlet of type [com.vaadin.spring.server.SpringVaadinServlet]
2017-01-09 09:26:26.273  INFO 80996 --- [           main] c.v.s.b.i.VaadinServletConfiguration     : Forwarding @SpringUI URLs from {/admin/*=org.springframework.web.servlet.mvc.ServletForwardingController@6fc3f1a7, /pages/*=org.springframework.web.servlet.mvc.ServletForwardingController@6fc3f1a7, /dashboard/*=org.springframework.web.servlet.mvc.ServletForwardingController@6fc3f1a7, /admin/*/=org.springframework.web.servlet.mvc.ServletForwardingController@6fc3f1a7, /dashboard/*/=org.springframework.web.servlet.mvc.ServletForwardingController@6fc3f1a7, /pages/*/=org.springframework.web.servlet.mvc.ServletForwardingController@6fc3f1a7}
2017-01-09 09:26:26.283  INFO 80996 --- [           main] c.v.spring.navigator.SpringViewProvider  : Looking up SpringViews
2017-01-09 09:26:26.288  INFO 80996 --- [           main] c.v.spring.navigator.SpringViewProvider  : 18 SpringViews found
2017-01-09 09:26:26.858  INFO 80996 --- [           main] com.web.Application   : Started Application in 26.671 seconds (JVM running for 27.124)

但是当我访问我的应用程序时:

代码语言:javascript
复制
2017-01-09 09:26:32.916  WARN 80996 --- [  XNIO-2 task-1] c.v.s.DefaultDeploymentConfiguration     : 
=================================================================
Vaadin is running in DEBUG MODE.
Add productionMode=true to web.xml to disable debug features.
To show debug window, add ?debug to your application URL.
=================================================================
2017-01-09 09:26:35.613  INFO 80996 --- [  XNIO-2 task-2] c.vaadin.spring.server.SpringUIProvider  : Checking the application context for Vaadin UIs
2017-01-09 09:26:35.615  INFO 80996 --- [  XNIO-2 task-2] c.vaadin.spring.server.SpringUIProvider  : Found Vaadin UI [com.web.ui.AdminUI]
2017-01-09 09:26:35.616  INFO 80996 --- [  XNIO-2 task-2] c.vaadin.spring.server.SpringUIProvider  : Found Vaadin UI [com.web.ui.DashboardUI]
2017-01-09 09:26:35.616  INFO 80996 --- [  XNIO-2 task-2] c.vaadin.spring.server.SpringUIProvider  : Found Vaadin UI [com.web.ui.PagesUI]
2017-01-09 09:26:35.616  WARN 80996 --- [  XNIO-2 task-2] c.vaadin.spring.server.SpringUIProvider  : Found no Vaadin UIs in the application context
2017-01-09 09:26:36.737  INFO 80996 --- [  XNIO-2 task-8] c.vaadin.spring.server.SpringUIProvider  : Checking the application context for Vaadin UIs
2017-01-09 09:26:36.740  INFO 80996 --- [  XNIO-2 task-8] c.vaadin.spring.server.SpringUIProvider  : Found Vaadin UI [com.web.ui.AdminUI]
2017-01-09 09:26:36.740  INFO 80996 --- [  XNIO-2 task-8] c.vaadin.spring.server.SpringUIProvider  : Found Vaadin UI [com.web.ui.DashboardUI]
2017-01-09 09:26:36.740  INFO 80996 --- [  XNIO-2 task-8] c.vaadin.spring.server.SpringUIProvider  : Found Vaadin UI [com.web.ui.PagesUI]
2017-01-09 09:26:36.740  WARN 80996 --- [  XNIO-2 task-8] c.vaadin.spring.server.SpringUIProvider  : Found no Vaadin UIs in the application context

我正在为vaadin使用一个自定义的servlet,如果我注释它(并使用vaadin spring boot auto config提供的默认设置),则不会出现调试信息……

代码语言:javascript
复制
@Bean(name = "springBootServletRegistrationBean")
    public ServletRegistrationBean servletRegistrationBean() {
        SpringVaadinServlet servlet = new SpringVaadinServlet() {

            @Override
            protected VaadinServletService createServletService(DeploymentConfiguration deploymentConfiguration) throws ServiceException {
                SpringVaadinServletService service = new SpringVaadinServletService(this, deploymentConfiguration, null) {
...

有人知道我做错了什么吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-16 19:45:13

尝试将vaadin.servlet.productionMode=true添加到属性文件中。所有其他属性都可以在类中看到:com.vaadin.spring.boot.internal.VaadinServletConfigurationProperties

此外,对于自定义VaadinServlet,您应该使用以下结构,而不是使用ServletRegistrationBean

代码语言:javascript
复制
@Bean
public VaadinServlet vaadinServlet(){
    return new SpringVaadinServlet(){
        @Override
        protected VaadinServletService createServletService(DeploymentConfiguration deploymentConfiguration) throws ServiceException {
            SpringVaadinServletService servletService = new SpringVaadinServletService(this, deploymentConfiguration, getServiceUrlPath()) {
                // Override any custom method here
            }
        }
    };
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41579995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档