嵌入式Servlet 3.0容器使用ServletContainerInitializer而不是web.xml

时间:2012-10-15 17:43:38

标签: java spring-mvc servlet-3.0

从我理解的方式来看,3.0 servlet容器应该扫描类路径以获取ServletContainerInitializer接口的实现(即springs)。随后,这应该调用WebApplicationInitializer实现的onStartup方法。

大。真棒。

现在我想构建一个jar文件,它将启动一个嵌入式3.0 servlet容器(jetty 8或tomcat 7)并做到这一点。我看到很多关于如何构建war文件的例子。但是我该如何以编程方式执行此操作?

1 个答案:

答案 0 :(得分:3)

如果您不想构建.war文件,则需要自己致电WebApplicationInitializer onStartup(ServletContext)。如何获取servlet上下文将特定于您使用的容器。

在Tomcat中:

Tomcat tomcat = new Tomcat();
// skipping a few steps
Context ctx = tomcat.addContext(contextPath, baseDir);
ServletContext sc = ctx.getServletContext();
相关问题