0

以前にいくつかの春の MVC 構成をセットアップしましたが、今回は何かが足りないようです。構成は次のとおりです。

web.xml :

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
        /WEB-INF/dispatcher-servlet.xml
    </param-value>
</context-param>    

<listener>
    <listener-class>org.jboss.resteasy.plugins.spring.SpringContextLoaderListener</listener-class>
</listener>

<servlet>
    <servlet-name>dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>dispatcher</servlet-name>
    <url-pattern>/test/*</url-pattern>
</servlet-mapping>

dispatcher-servlet.xml :

<context:annotation-config />

<context:component-scan base-package="mypackage.controller" />

<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="mappings">
        <props>
            <prop key="/gupld">uploadController</prop>
        </props>
    </property>
</bean>

<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
    <property name="prefix" value="/WEB-INF/jsp/" />
    <property name="suffix" value=".jsp" />
</bean>

ManController.java :

package mypackage.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class MainController {

    @RequestMapping("/test")
    public ModelAndView welcome() {
        ModelAndView mav = new ModelAndView("_index");
        return mav;
    }
}

そして、私が電話すると、次のようhttp://127.0.0.1:8080/mycontext/test/になります:

http-8080-1 INFO  2012-12-26 09:27:24,799 SimpleUrlHandlerMapping - Mapped URL path [/test] onto handler 'mainController'
http-8080-1 WARN  2012-12-26 09:27:24,887 PageNotFound - No mapping found for HTTP request with URI [/mycontext/test/] in DispatcherServlet with name 'dispatcher'

何か案が?

4

1 に答える 1

0

サーブレット/test/*をロードするためにurl-pattern を使用しています。dispatcher

/mycontext/test/しかし、提供されたURLにマッピングされていないものを送信しています。

これを使ってみて、

<servlet-mapping>
    <servlet-name>dispatcher</servlet-name>
    <url-pattern>/*/test</url-pattern>
</servlet-mapping>

またはこれを使用

<servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/*</url-pattern>
    </servlet-mapping>
于 2012-12-26T09:24:48.543 に答える