2017-06-22 104 views
2

我想將所有請求與不以'api'開頭的PathVariable匹配。我測試下面的RequestMapping。 spring可以匹配請求,但無法爲PathVariable獲取價值。我如何解決這個問題?Spring-MVC PathVariable匹配不以word開頭的正則表達式

@RequestMapping(value = "/{name:(?!api).+}", method = RequestMethod.GET) 
public void getNotApi(@PathVariable String name, HttpServletResponse response) { 
    ... 
} 

我獲得以下像localhost:8080/resource一些請求消息。

Error 500 Missing URI template variable 'name' for method parameter of type String

回答

3
@RequestMapping(value = "/{name:^(?!api).+}", method = RequestMethod.GET) 
-2

如果你正在構建的Java前8的版本,這可能是因爲缺少名稱。嘗試@PathVariable("name") String name。保持@PathVariable的值與您的映射參數名稱相同。

相關問題