我创建了一个Servlet(继承自HttpServlet),并按照3.0规范进行了注释
@WebServlet(name="DelegateServiceExporter", urlPatterns={"/remoting/DelegateService"})
我在Spring Boot中的@Configuration
类中扫描了这个Servlet所在的包。但是,当我的Spring Boot应用程序启动时,它并没有记录它已经将这个Servlet部署到嵌入式Tomcat 8.0.15容器中。
因此,我也将@Component
添加到了我的Servlet中。现在,Spring Boot注册了这个Servlet(证明扫描包已经正确设置),但是它使用驼峰命名法基于类名注册了一个URL模式。这样做更好了 - 例如,我注册了一个Servlet,但URL映射却不对!
2015-01-05 11:29:08,516 INFO (localhost-startStop-1) [org.springframework.boot.context.embedded.ServletRegistrationBean] Mapping servlet: 'delegateServiceExporterServlet' to [/delegateServiceExporterServlet/]
我该如何让Spring Boot自动加载所有使用@WebServlet
注解标记的Servlet并遵守它们的URL映射?
@WebServlet
。问题链接为:https://github.com/spring-projects/spring-boot/issues/2290 - Andy Wilkinson