3

这是 web.xml 中的 url 模式

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

这是我的控制器

@Controller  
public class HelloController   
{  
        @RequestMapping("/*.km")  
    public String handleKm()  
    {  
        System.out.println("km ext called");  
        return "aaa";  
    }  

    @RequestMapping("/*.jsp")  
    public String handleJsp()  
    {  
        System.out.println("jsp pages called");  
        return "bbb";  
    }  
}  

使用 /requestMapping/a.km 访问 url 时,它可以工作,调用 handleKm() 方法。但是使用 /requestMapping/a.jsp 时,它应该调用 handleJsp()。但它不起作用。结果:HTTP 状态 404 - /requestMapping/a.jsp。为什么 ??

如果我将 url-pattern 从 "/" 更改为 "/*" ,虽然这两种方法都被调用,但没有到达相应的页面。可能是“org.springframework.web.servlet.view.InternalResourceViewResolver”不起作用。

4

1 回答 1

0

Check out this related SO post (possibly a duplicate). I think the .jsp extension is confusing the dispatcher servlet. Try using an extension that isn't .jsp and see if that works.

于 2013-07-25T04:59:18.503 回答