我有一个配置了URI模板模式的控制器类。但是,当我从另一个控制器类重定向到此控制器时,它无法找到此处理程序方法。
我在日志中看到一条错误,上面写着“RequestMappingHandlerMapping - 找不到/ path2 / 2的处理程序方法”,然后“在DispatcherServlet中找不到带有URI [/ path2 / 2]的HTTP请求的映射。
@Controller
@RequestMapping("/path1")
public class Controller1 {
@RequestMapping (method = MethodRequest.POST)
public String postMethod() {
// some logic
return "redirect:/path2/" + 2;
}
}
@Controller
@RequestMapping("/path2/${id}")
public class Controller2 {
@RequestMapping(method=RequestMethod.GET)
public ModelAndView getMethod(@PathVariable("id") long id) {
return new ModelAndView("some jsp");
}
}
如果我将Controller2类的RequestMapping更改为“/ path2 /”并重定向到该url,则重定向工作正常。有人可以建议吗? 我在我的web.xml中配置了DispatcherServlet,在我的servlet上下文文件中配置了InternalResourceViewResolver。
提前致谢!!
答案 0 :(得分:0)
语法是
@RequestMapping("/path2/{id}")
不
@RequestMapping("/path2/${id}")