【发布时间】:2016-11-25 23:57:09
【问题描述】:
背景和要求是:
- 有很多老项目都有一个applicationContext.xml和一个或多个dispatcher[-XXX]-servlet.xml。我们希望这些项目在使用 spring boot 时仍然可以工作(我们开发了一个部署工具来部署 spring boot 应用程序,但旧项目仍然是手动部署的)。但是,@SpringBootApplication 无法按原样构建上下文。而且我认为将它们一一重写成代码的成本太高了。
- 在那些项目中,我们使用扩展的 RequestMappingHandlerMapping,所以我们不能使用原生 MVC。
- tomcat 的 context.xml 包含 jndi 定义,由 OP 维护。我们必须像 tomcat 一样加载它。
- 我找不到在哪里设置欢迎文件,这是在 web.xml 中设置的
我目前正在使用:
@Configuration
@ImportResource({"classpath:/applicationContext.xml", "classpath:/dispatcher-servlet.xml"})
那些不使用jndi的简单项目都可以启动。
但据我了解,在这种情况下,applicationContext 和 dispatcher-servlet 处于同一级别(dispatcher-servlet 应该是 applicationContext 的子级,不是吗?)。所以,我什至不能确保这个能正常工作。
【问题讨论】:
标签: java spring-mvc tomcat servlets spring-boot