enkor
enkor

Reputation: 177

Spring MVC + Apache tiles, form validation and redirect

I have a problem with redirecting page.

Controller:

@Controller
@RequestMapping("/user")
public class UserController {

    @RequestMapping(method = RequestMethod.POST)
    public String processSubmit(@Valid User user,
            BindingResult result) {

        if (result.hasErrors()) {

                    return "userForm";

                    **It will show error - Could not resolve view with name 'userForm' in servlet with name 'dispatcher'**


                    return "redirect:user.htm";

                    **It will redirect page but without error messages**                                                    

        } else {
           **same problem here**
            return "userResult";
        }
    }

    @RequestMapping(method = RequestMethod.GET)
    public ModelAndView initForm(ModelAndView model) {
        User us = new User();
        model.addObject("user", us);
        return model;

    }

}

dispatcher-servlet:

<bean id="viewResolver"
    class="org.springframework.web.servlet.view.UrlBasedViewResolver">
    <property name="viewClass">
        <value>
            org.springframework.web.servlet.view.tiles2.TilesView
        </value>
    </property>
</bean>
<bean id="tilesConfigurer"
    class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
    <property name="definitions">
        <list>
            <value>/WEB-INF/tiles.xml</value>
        </list>
    </property>
</bean>

web.xml:

 <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>
            org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>*.htm</url-pattern>
    </servlet-mapping>

Without tiles is everything ok. But when I configure dispatcher to use tiles, redirecting dont work and I dont know how to fix it.

Upvotes: 2

Views: 2164

Answers (1)

enkor
enkor

Reputation: 177

Solution:

I must return name of tile not the jsp file. Thanks to jerome.

Upvotes: 3

Related Questions