Spring控制器的URL请求映射无法正常工作 [英] Spring Controller's URL request mapping not working as expected

查看:227
本文介绍了Spring控制器的URL请求映射无法正常工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在web.xml中创建了一个映射,如下所示:

I have created a mapping in web.xml something like this:

<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>/about/*</url-pattern>  
</servlet-mapping>

在我的控制器中我有这样的:

In my controller I have something like this:

import org.springframework.stereotype.Controller;  
@Controller  
public class MyController{  
    @RequestMapping(value="/about/us", method=RequestMethod.GET)
    public ModelAndView myMethod1(ModelMap model){  
        //some code  
        return new ModelAndView("aboutus1.jsp",model);  
    }  
    @RequestMapping(value="/about", method=RequestMethod.GET)
    public ModelAndView myMethod2(ModelMap model){  
        //some code  
        return new ModelAndView("aboutus2.jsp",model);  
    }  
}

我的dispatcher-servlet.xml有视图解析器:

And my dispatcher-servlet.xml has view resolver like:

<mvc:annotation-driven/>  
<bean id="viewResolver"
          class="org.springframework.web.servlet.view.InternalResourceViewResolver"
          p:viewClass="org.springframework.web.servlet.view.JstlView"
          p:prefix="/WEB-INF/jsp/"
          p:suffix=".jsp"/>

令我吃惊的是:request ... / about / us 没有到达控制器中的myMethod1。浏览器显示404错误。我把一个记录器里面的方法,但它不打印任何东西,意思,它没有被执行。

... / about 工作正常!可以做什么可以使 ... / about / us 请求工作?任何建议?

To my surprise: request .../about/us is not reaching to myMethod1 in the controller. The browser shows 404 error. I put a logger inside the method but it isn't printing anything, meaning, its not being executed.
.../about works fine! What can be the done to make .../about/us request work? Any suggestions?

推荐答案

您需要使用 @RequestMapping(value =/ us RequestMethod.GET)或您需要请求约/约/ us

You need to use @RequestMapping(value="/us", method=RequestMethod.GET) or You need to request about/about/us

这篇关于Spring控制器的URL请求映射无法正常工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆