我有一个自定义的RequestMappingHandlerMapping类,该类将特殊注释解释为其映射条件的一部分。因此,它被实例化为bean:
@Configuration
@EnableWebMvc
public class ConfigServletConfig extends WebMvcConfigurerAdapter {
@Bean
public RequestMappingHandlerMapping requestMappingHandlerMapping() {
RequestMappingHandlerMapping handlerMapping = new VersionRangeRequestMappingHandlerMapping();
handlerMapping.setOrder(0);
return handlerMapping;
}
}
但是,当我创建一个用于测试的MockMvc对象(带有standaloneSetup)时,并未使用此映射处理程序。如果不考虑额外的注释,映射将失败,因为我有多个具有相同@RequestMapping的控制器方法。注释是区别它们的地方。
如何配置MockMvc以使用此自定义映射处理程序?
最佳答案
如何配置MockMvc以使用此自定义映射处理程序?
从Spring Framework 4.3.x开始,当前无法向RequestMappingHandlerMapping
的standaloneSetup()
构建器注册自定义MockMvc
。
但是,团队正在考虑在Spring Framework 5.0中添加此类支持。
有关更多详细信息,请参见SPR-15472。