这是web.xml中的url-pattern
<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”无效。
答案 0 :(得分:0)
结帐this related SO post (possibly a duplicate)。我认为.jsp
扩展名混淆了调度程序servlet。尝试使用非.jsp
的扩展名,看看是否有效。