我在web.xml中定义了 contextConfigLocation ,如下所示:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/root-context.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>appServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/app/servlet-context.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
在root-context.xml中,我有
<context:property-placeholder location="${propFile}" />
现在,我发现在 servlet-context.xml 中配置的Spring bean或其子上下文xml( beans:import <)中需要 no 属性/ strong>)可以解决,虽然它们在 propFile 中明确定义,并且可以从 root-context.xml 或其子上下文xml中解析。
另外,更痛苦的是
如果我在root-context.xml中使用 mvc:mapping path =“/ ”**定义 mvc:interceptor ,则不会为请求模式调用拦截器= “/休息/*”。但是如果在servlet-context.xml或其子xml中配置,则会成功调用相同的拦截器。
如果我遗失了某些内容或是预期的行为,请告诉我?
环境:
Java版本:1.8.0_60,供应商:Oracle Corporation
操作系统名称:“windows 7”,版本:“6.1”,arch:“amd64”,系列:“dos”
我的大多数Spring依赖项的版本(如spring-context,spring-beans等)都由io.spring.platform解决:platform-bom:Brussels-SR3为 4.3.9.RELEASE