无法使用Spring MVC在WEB-INF子文件夹中打开jsp

时间:2015-09-22 08:49:13

标签: java spring jsp spring-mvc

我试图打开我的应用程序的jsp页面,但是我收到错误。这是我的项目结构

-webapp
  -WEB-INF
    -pages
      -user
         userHome.jsp
         userAdministration.jsp
      index.jsp

这是我的配置类

public class WebAppConfig extends WebMvcConfigurerAdapter {
...
public UrlBasedViewResolver setupViewResolver() {
        UrlBasedViewResolver resolver = new UrlBasedViewResolver();
        resolver.setPrefix("WEB-INF/pages/");
        resolver.setSuffix(".jsp");
...

Index.jsp是我的首页。

的index.jsp

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
...
<a href="<c:url value="/user" />" role="button">User</a>

userHome.jsp

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    ...
<a href="<c:url value="/user/administration" />">Administration</a>

UserController.java

@Controller
public class UserController {
    ...
@RequestMapping(value = "/user", method = RequestMethod.GET)
public ModelAndView userArea(Model model) throws Exception {
    ModelAndView mv = new ModelAndView();
    mv.setViewName("user/userHome");
    mv.addObject("title", "Home Page");
    return mv;
}
 @RequestMapping(value = "/user/administration", method = RequestMethod.GET)
    public ModelAndView administration(Model model) throws Exception {
        ModelAndView mv = new ModelAndView();
        mv.setViewName("user/userAdministration");
        mv.addObject("title", "Administration");
        return mv;
    }
...

userHome页面正确打开,但当我点击链接转移到userAdministration时出现以下错误

enter image description here

请帮我打开这个页面。

1 个答案:

答案 0 :(得分:2)

问题是你在开头缺少/

resolver.setPrefix("/WEB-INF/pages/");