从我理解的方式来看,3.0 servlet容器应该扫描类路径以获取ServletContainerInitializer接口的实现(即springs)。随后,这应该调用WebApplicationInitializer实现的onStartup方法。
大。真棒。
现在我想构建一个jar文件,它将启动一个嵌入式3.0 servlet容器(jetty 8或tomcat 7)并做到这一点。我看到很多关于如何构建war文件的例子。但是我该如何以编程方式执行此操作?
答案 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();