我只是查看Spring MVC框架,所以我是新手,请原谅基本问题。但是我试图找出视图解析器的工作原理。
我创建了一个基本的控制器方法来添加这样的用户:
@RequestMapping(value = "/add", method = RequestMethod.POST)
public String addUser(@ModelAttribute("user") User user, BindingResult result) {
logger.entry(user, result);
userRepository.save(user);
String returnString="redirect:members/confirmation";
logger.exit(returnString);
return returnString;
}
我希望它重定向到WEB-INF / pages文件夹下的members / confirmation.jsp页面。它只是一个简单的JSP,表示"感谢您注册"。重定向是因为它不允许表单双重发布。 (这只是一个基本的测试应用程序)
我在mvc-dispatcher-servlet.xml配置文件中配置了internalviewresolver:
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/pages/"/>
<property name="suffix" value=".jsp"/>
<property name="order" value="0"/>
</bean>
但它没有解析到确认视图,而只是404。
我在这里缺少什么?
谢谢!
富
答案 0 :(得分:2)
返回"redirect:members/confirmation"
客户端重定向到members/confirmation
(到此相对网址)。您的应用程序目前不响应对members/confirmation
的HTTP请求。使用目标JSP页面作为视图创建此URI的控制器:
@RequestMapping(value = "/members/confirmation", method = RequestMethod.GET)
public String confirmation() {
return "members/confirmation";
}
这是唯一正确的方法。