Как перенаправить страницу приветствия с помощью абстрактного класса контроллера в spring MVC?

Я пытаюсь выполнить многостраничную обработку формы через абстрактный контроллер формы мастера. Но в URL отображается http://localhost:8080/SpringMVC/ вот так. Не удалось сопоставить файл WelcomePage.jsp. Мой диспетчерский сервлет это

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

<bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" />

<bean name="/WelcomePage" class="com.mkyong.common.controller.WelcomeController" />

<bean  class="com.mkyong.common.controller.UserController" >

    <property name="pages">
        <list>
        <!-- follow sequence -->
        <value>Page1Form</value> <!-- page1 -->
        <value>Page2Form</value> <!-- page2 -->
        <value>Page3Form</value> <!-- page3 -->
        </list>
    </property>
    <property name="validator">
        <bean class="com.mkyong.common.validator.UserValidator" />
    </property>
</bean>

<!-- Register User.properties for validation error message -->
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
    <property name="basename" value="User" />
</bean>
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
     <property name="prefix">
         <value>/WEB-INF/pages/</value>
      </property>
      <property name="suffix">
        <value>.jsp</value>
     </property>
</bean>

And my controller code is here mentioned . If I run my project shows warning No mapping found for HTTP request with URI [/SpringMVC/] in DispatcherServlet with name 'mvc-dispatcher'

public class WelcomeController extends AbstractController{

@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request,
        HttpServletResponse response) throws Exception {

    return new ModelAndView("WelcomePage");
}
}

person Neethu    schedule 12.02.2015    source источник


Ответы (1)


В Spring MVC ControllerClassNameHandlerMapping использует соглашение для сопоставления запрошенного URL-адреса с контроллером (соглашение важнее конфигурации). Он принимает имя класса, удаляет суффикс «Контроллер», если он существует, и возвращает оставшийся текст в нижнем регистре и с начальным знаком «/».

в вашем случае у вас нет контроллера, сопоставленного с URL-адресом «/», поэтому для доступа к странице приветствия вы должны использовать: http://localhost:8080/SpringMVC/welcome

person tcharaf    schedule 19.02.2015