我正在使用 springframework 中的@PathVariable。当我尝试 return 从控制器查看页面名称时,出现 404 错误
I am using @PathVariable from springframework. When I try to return view page name from controller, I get 404 error
我正在使用 spring mvc(版本:4.1.5.RELEASE)。我在我的项目中添加了新的控制器并尝试使用 @PathVariable 注释。当我添加此注释时,我的 jsp 模板视图页面出现 404 错误。如果我从@RequestMapping 路径中删除@PathVariable 注释和{id},代码将正常工作。有人可以帮我看看有什么问题吗?
dispatcher-servlet.xml
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="WEB-INF/views/"></property>
<property name="suffix" value=".jsp"></property>
我的新控制器
@Controller
public class MoviesController {
@RequestMapping(value = "/movie/{id}", method=RequestMethod.GET)
public String moviesDetails(@PathVariable(value="id")
String id, ModelMap map) {
System.out.println(id);
map.addAttribute("movieId", id);
return "moviesDetails";
}
}
link 我添加 id 的地方如下所示。
a href="movie/${movie.id}">${movie.movieName}
HTTP 状态 404 - /shcm/movie/WEB-INF/views/moviesDetails.jsp
moviesDetails.jsp 文件已存在于 WEB-INF/views 路径
改变
@PathVariable(value="id") 字符串 id
至
@PathVariable("id") 字符串 id
控制器变更:
@GetMapping("/movie/{id}")
public String moviesDetails(@PathVariable
String id, ModelMap map) {
System.out.println(id);
map.addAttribute("movieId", id);
return "moviesDetails";
}
并且在 web.xml 中:
<property name="prefix" value="/WEB-INF/views/"></property>
我正在使用 spring mvc(版本:4.1.5.RELEASE)。我在我的项目中添加了新的控制器并尝试使用 @PathVariable 注释。当我添加此注释时,我的 jsp 模板视图页面出现 404 错误。如果我从@RequestMapping 路径中删除@PathVariable 注释和{id},代码将正常工作。有人可以帮我看看有什么问题吗?
dispatcher-servlet.xml
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="WEB-INF/views/"></property>
<property name="suffix" value=".jsp"></property>
我的新控制器
@Controller
public class MoviesController {
@RequestMapping(value = "/movie/{id}", method=RequestMethod.GET)
public String moviesDetails(@PathVariable(value="id")
String id, ModelMap map) {
System.out.println(id);
map.addAttribute("movieId", id);
return "moviesDetails";
}
}
link 我添加 id 的地方如下所示。
a href="movie/${movie.id}">${movie.movieName}
HTTP 状态 404 - /shcm/movie/WEB-INF/views/moviesDetails.jsp
moviesDetails.jsp 文件已存在于 WEB-INF/views 路径
改变
@PathVariable(value="id") 字符串 id
至
@PathVariable("id") 字符串 id
控制器变更:
@GetMapping("/movie/{id}")
public String moviesDetails(@PathVariable
String id, ModelMap map) {
System.out.println(id);
map.addAttribute("movieId", id);
return "moviesDetails";
}
并且在 web.xml 中:
<property name="prefix" value="/WEB-INF/views/"></property>