页面不在控制器中重定向

时间:2014-05-21 12:20:42

标签: java spring jsp spring-mvc

这是我的链接

  <li class="active"><a href="/createform">Create Form</a></li>

这是我的控制器

@ResponseBody
@RequestMapping("/createform")
public String createform(Model uiModel, HttpServletRequest request)
{
    //some other codes
return "form";
}

这是我的view.xml

<definition name="form"  extends="default">
        <put-attribute name="content" value="/WEB-INF/views/jsps/tags/Form.jsp" />
    </definition>

我的问题是Form.jsp没有打开。当点击链接时,URL变为`localhost:8080 / pro / createform'但是Form.jsp的内容没有打开而是我只得到一个单词“form”

当我调试然后我可以看到控件转到控制器但是Form.jsp的内容没有打开

任何人都可以告诉我原因吗?

2 个答案:

答案 0 :(得分:1)

这可以解决您的问题

@ResponseBody
    @RequestMapping("/createform")
    public ModalAndView createform(Model uiModel, HttpServletRequest request)
    {
        //some other codes
    return new ModalAndView("Form");
    }

答案 1 :(得分:1)

@ResponseBody
@RequestMapping("/createform")
public String createform(Model uiModel, HttpServletRequest request) {
    //some other codes
    return "form";
}

问题是你的代码(上图)。您已使用@ResponseBody注释该方法,正如注释名称所暗示的那样,它将返回结果作为响应的主体。但是,您希望拥有一个视图,并使用ViewResolver选择正确的视图。

要解决此问题,只需删除@ResponseBody注释。

@RequestMapping("/createform")
public String createform(Model uiModel, HttpServletRequest request) {
    //some other codes
    return "form";
}

<强>链接

  1. @ResponseBody | javadoc
  2. @RequestMapping | javadoc