Spring似乎以不一致的方式解析链接。 例如,如果当前URL为
http://localhost/roles
以下锚
<a href="roleA1">roleA1</a>
转到http://localhost/roleA1而不是http://localhost/roles/roleA1
另一方面,如果当前URL是
http://localhost/roles/ (note the '/' at the end)
上一个链接将解析为http://localhost/roles/roleA1
http://localhost/roles和http://localhost/roles/都转到同一页面,因此Spring会平等对待它们。现在我想避免使用绝对路径,但如果我现在保留它,导航到http://localhost/roles的用户将得到错误的行为。
有没有办法解决它?
这是我的控制器配置:
@RequestMapping("/roles")
public class RoleController {
@RequestMapping(method = RequestMethod.GET)
public String roles(final Map<String, Object> model) {
...
return "roles";
}
@RequestMapping(path = "/{roleId}", method = RequestMethod.GET)
public String role(@PathVariable String roleId, final Map<String, Object> model) {
...
return "role";
}