我已将弹簧版本升级到4.1.4,现在想要使用Matrix参数。
我在下面添加了以支持配置文件中的矩阵参数:
<mvc:annotation-driven conversion-service="applicationConversionService" enable-matrix-variables="true"/>
在代码中,我在我的方法中访问它:
public ResponseEntity<String> transactions(@PathVariable("accountNumber") String accountNumber,
@MatrixVariable(required = true,value="sinceDate") String sinceDate){....}
我的网址是:http://localhost:8080/spring_test/accounts/8293/transactions;sinceDate=2014-01-20;untilDate=2014-01-01;
但是我将sinceDate
值设为null,使用@MatrixVariable
声明。
请告知我是否遗漏了任何步骤?
谢谢, 玛纳斯
答案 0 :(得分:0)
如果您有自己的AbstractHandlerMapping
定义,则应指定其<beans:property name="removeSemicolonContent" value="false"/>
。
否则我建议您调试Spring代码并找出为removeSemicolonContent
重置默认RequestMappingHandlerMapping
的原因。
断点应位于UrlPathHelper#removeSemicolonContent
为了实现这一点,你应该在approriate pathVariable
后面的URL中放置矩阵变量:
http://localhost:8080/spring_test/accounts/8293;sinceDate=2014-01-20;untilDate=2014-01-01;/transactions