Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在SpringMVC上管理错误URL?_Java_Spring Mvc_Url Routing - Fatal编程技术网

Java 如何在SpringMVC上管理错误URL?

Java 如何在SpringMVC上管理错误URL?,java,spring-mvc,url-routing,Java,Spring Mvc,Url Routing,我有一个带有SpringMVC3.0.4.0版本的webapp 我有以下情况: 1) 我通过GET输入搜索网页,路径为:search.html 2) 我单击“搜索”,并在路径:searchResults.hmtl 3) 单击搜索结果时,我会向searchResults/enterResult.html发布帖子 4) 假设控制器引发异常… 5) 我需要返回到searchResults.html页面和以前的搜索 我不能使用forward,因为它维护searchResults/enterResults

我有一个带有SpringMVC3.0.4.0版本的webapp

我有以下情况:

1) 我通过GET输入搜索网页,路径为:search.html
2) 我单击“搜索”,并在路径:searchResults.hmtl
3) 单击搜索结果时,我会向searchResults/enterResult.html发布帖子
4) 假设控制器引发异常…
5) 我需要返回到searchResults.html页面和以前的搜索

我不能使用forward,因为它维护searchResults/enterResults.html路径,所以如果我单击某个搜索结果,它将生成以下不存在的路径:searchResults/searchResults/enterResults.html


您知道如何处理此问题吗?

如果出现错误,为什么不执行
重定向:searchResults.html
而不是转发它?如果要将错误消息发送回该页面显示,可以将其作为参数添加,如下所示:
redirect:searchResults.html?error\u message=yada

顺便说一下,如果在构建搜索结果表单操作时避免使用相对URL,那么首先就不应该出现
searchResults/searchResults/enterResults.html
问题。看起来你是在
entresults.html
上发帖,而不是在
/your app/searchResults/entresults.html
上发帖。如果你解决了这个问题,你就不需要像我上面提到的那样执行重定向

我想说的是:

。。。而不是这样做

<form action="enterResults.html" method="POST">
    ...
</form>

...
。。。做这个

<form action="${pageContext.request.contextPath}/searchResults/enterResults.html" method="POST">
    ...
</form>

...
这样,转发的URL是否保留以前的URL其实并不重要。您将始终发布正确的操作