初学springmvc,一个简单的请求转发,结果一直出现500错误。使用return "login"; 就正确,使用return "forward:login";就出现500错误,代码如下,求助啊。同时请教一下return "login";和return "forward:login";的区别,谢谢了
后端Controller中代码:
    @RequestMapping(value = "/login",, method = RequestMethod.GET)
    public String  toLogin() throws ServletException, IOException {
    //  return "login";//正确
        return "forward:login";//出错,HTTP Status 500 – Internal Server Error
    }前端html中代码:
<form action="/login" method="get">
    <button type="submit" value="去往登录页">去往登录页</button>
</form>使用return "forward:login";的错误:

解决方案 »

  1.   

    return "forward:/login";这样试试
    forward是服务端跳转
      

  2.   

           return "redirect:"+url;
      

  3.   


    试过了return "forward:/login";,同样的错误。而且我用request.getRequestDispatcher()这样跳转就对了:
        @RequestMapping(value = "/login", method = RequestMethod.GET)
        public void  toLogin(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    //        return "login";//正确
    //        return "forward:/login";//出错,HTTP Status 500 – Internal Server Error
            request.getRequestDispatcher("WEB-INF/views/login.html").forward(request, response);//正确
        }
    难道是我的springmvc.xml配置有问题?
      

  4.   


    试过了return "forward:/login";,同样的错误。而且我用request.getRequestDispatcher()这样跳转就对了:
        @RequestMapping(value = "/login", method = RequestMethod.GET)
        public void  toLogin(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    //        return "login";//正确
    //        return "forward:/login";//出错,HTTP Status 500 – Internal Server Error
            request.getRequestDispatcher("WEB-INF/views/login.html").forward(request, response);//正确
        }
    难道是我的springmvc.xml配置有问题?视图解析器 的配置有问题吧
      

  5.   

    在配置文件里面配置好视图解析器,直接返回视图名字就是转发啊,为什么要用forward?