我计划将旧应用程序迁移到Spring-Boot 我想停止使用web.xml描述符并注册旧的纯Servlet(启用“async-supported”)和相关的ServletContextListener。
答案 0 :(得分:2)
Spring Boot将使用servlet容器自动注册应用程序上下文中的任何Servlet
bean。默认情况下,支持的async设置为true
,因此除了为Servlet
创建bean之外,您无需做任何事情。
如果出于某种原因,你想要更多地控制你的servlet的注册,那么,不是将Servlet本身暴露为bean,你可以将它包装在ServletRegistrationBean
中。
答案 1 :(得分:1)
在您的应用程序类上放置一个@EnableAsync。 有关详细信息,请参阅here。
答案 2 :(得分:0)
servletRegistrationBean.isAsyncSupported()
默认为true
,它决定是否支持异步功能。
如果您遇到以下问题,请遵循link
java.lang.IllegalArgumentException:必须在服务器上启用异步支持 servlet和异步请求处理中涉及的所有过滤器。这个 使用Servlet API或通过添加Java代码完成 对servlet和过滤器“真实” web.xml中的声明。另外,您必须使用Servlet 3.0+容器