4
我在我的春节,3 MVC应用程序 使用瓷砖2我定义了一个表格:瓷砖和Spring MVC中重定向
<definition name="addcompany.htm" extends="baseLayout">
<put-attribute name="title" value="Add Company"/>
<put-attribute name="body" value="/WEB-INF/jsp/addcompany.jsp"/>
</definition>
和:
addcompany.(class)=org.springframework.web.servlet.view.tiles2.TilesView
addcompany.url=addcompany.htm
这里是我的控制器:
@RequestMapping(value="/addcompany.htm", method=RequestMethod.GET)
public ModelAndView getForm() {
logger.info("Getting form!");
ModelAndView mav = new ModelAndView();
logger.info("Loading form");
Company cmp = new Company();
mav.addObject("company",cmp);
mav.setViewName("addcompany");
return mav;
}
@RequestMapping(value="/addcompany.htm", method=RequestMethod.POST)
public String postForm(@ModelAttribute("company") Company cmp) {
logger.info("post form!");
companyService.saveCompany(cmp);
logger.info("post form");
return "redirect:tiles:companylist"; // How do i redirect?
}
使用Tiles2,REDIRECT不起作用。
任何想法如何使用Tiles成功POST后重定向?
感谢
编辑: 解决方案是增加这在views.properties:
redirectcompanylist.(class)=org.springframework.web.servlet.view.RedirectView
redirectcompanylist.url=/companylist.htm
并在控制器返回redirectcompanylist
谢谢,但我得到一个500错误:无法解析视图的名称'重定向:/companylist.htm'。 companylist有自己的Tile也像addcompany – guigui42 2010-11-17 22:28:19
你有一个方法在你的控制器中用'@RequestMapping(value =“/ companylist.htm”,method = RequestMethod.GET)''注解吗? – hleinone 2010-11-17 22:45:09
是的,我拥有它。当我在我的浏览器中找到/companylist.htm网址时,它可以正常工作。但是当我填写表单并将公司添加到数据库后,重定向给了我这个错误:javax.servlet.ServletException:在servlet中无法解析名为'redirect:/companylist.htm'的视图 – guigui42 2010-11-17 22:51:54