2011-12-26 2 views
3

Я пытаюсь реализовать RedirectAttributes особенности в Spring MVC 3,1-релизSpring MVC 3.1 RedirectAttributes не работает

Я посылаю простую форму сообщение URL, и хотел бы видеть значение я отправку в переадресовать:

мой контроллер выглядит следующим образом:

@Controller 
public class DefaultController { 

    @RequestMapping(value="/index.html", method=RequestMethod.GET) 
    public ModelAndView indexView(){ 
     ModelAndView mv = new ModelAndView("index"); 
    return mv; 
    } 

    @RequestMapping(value="/greetings.action", method=RequestMethod.POST) 
    public ModelAndView startTask(@RequestParam("firstName") String firstName,RedirectAttributes redirectAttributes){ 
     redirectAttributes.addFlashAttribute("redirectAttributes.firstName", firstName); 
     ModelAndView mv = new ModelAndView(new RedirectView("success.html")); 
     return mv; 
    } 

    @RequestMapping(value="/success.html", method=RequestMethod.GET) 
    public ModelAndView successView(){ 
     ModelAndView mv = new ModelAndView("success"); 
     return mv; 
    } 
} 

Теперь мой Servlet XML выглядит следующим образом:

<beans xmlns="http://www.springframework.org/schema/beans" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:p="http://www.springframework.org/schema/p" 
xmlns:context="http://www.springframework.org/schema/context" 
xmlns:aop="http://www.springframework.org/schema/aop" 
xmlns:mvc="http://www.springframework.org/schema/mvc" 
xsi:schemaLocation=" 
http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd 
http://www.springframework.org/schema/context 
http://www.springframework.org/schema/context/spring-context-3.1.xsd 
http://www.springframework.org/schema/mvc 
http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd 
http://www.springframework.org/schema/aop 
http://www.springframework.org/schema/aop/spring-aop-3.1.xsd"> 
<mvc:annotation-driven/> 
<context:component-scan base-package="com.vanilla.flashscope.controllers" /> 

    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
     <property name="prefix"> 
      <value>/</value> 
     </property> 
     <property name="suffix"> 
      <value>.jsp</value> 
     </property> 
    </bean> 
</beans> 

Моя проблема в том, что в файле success.html redirectAttributes пуст.

<body> 
<h5>${redirectAttributes.firstName} </h5> 
</body> 

Ничего не печатает.

+0

У меня есть то же самое. Если вы получите решение, дайте мне знать, пожалуйста. – YNChumak

+0

Да, да. Я написал некоторые мысли об этом на моем сайте сообщества, надеюсь, что это поможет вам. http://goo.gl/Qbym2 –

+0

Tks Danny. Я зациклился на одной и той же проблеме. Ключ возвращал строку, а не ModelAndView, кажется странным, но работает. –

ответ

2

Похоже, вам нужно удалить «redirectAttributes». от имени ключа»

Вместо:

 redirectAttributes.addFlashAttribute("redirectAttributes.firstName", firstName); 

ли это:

redirectAttributes.addFlashAttribute("firstName", firstName); 
+0

Привет, он отлично работает с этим префиксом или без него в имени ключа. –

Смежные вопросы