Spring MVC URL路径更改

时间:2010-07-15 11:54:13

标签: spring-mvc

我是网络编程和Spring MVC 2.5的新手。

我不确定我的问题是一般的春季特定或网络特定。

我有一个menu.jsp,我使用jsp:include将它包含在我的所有jsp中。

<ul class="menu">
    <c:url var="home" value="home.htm"/>
    <c:url var="data" value="data.htm"/>

    <li><a href="${home}" class="parent"><span>HOME</span></a></li>
    <li><a href="${data}" class="parent"><span>DATA</span></a></li>
</ul>

当我第一次点击我的应用并拨打 http://localhost:8080/myapp/home.htm 时,一切都很顺利。 但是,当我点击一个使用multiactioncontroller将我带到新网址的链接时。

@RequestMapping(value = "/epm/epmItemList.htm", method = RequestMethod.GET)
public String setupForm(Model model, HttpServletResponse response) throws IOException {

}
@RequestMapping(value = "/epm/epmdelete.htm", method = RequestMethod.GET)
public String setupForm(Model model, HttpServletResponse response) throws IOException {

}

然后我再次点击,回家。我得到了404.我不知道为什么,但是当我检查我的网址链接时,它现在变为: 的 http://localhost:8080/myapp/epm/home.htm

Spring自然地说没有找到处理程序映射,因为我没有为这些映射配置任何映射。我该如何解决这个问题?感谢

1 个答案:

答案 0 :(得分:1)

请尝试以下更改:

<ul class="menu">
    <c:url var="home" value="/home.htm"/>
    <c:url var="data" value="/data.htm"/>

    <li><a href="${home}" class="parent"><span>HOME</span></a></li>
    <li><a href="${data}" class="parent"><span>DATA</span></a></li>
</ul>

这样链接应该与您的上下文相关,而不是相对于本地页面。