我正在创建示例Spring MVC应用程序。在此应用程序中,当我提交表单时,我有一个表单,我执行一些操作。
我的问题是在表单提交网址更改后,例如我的网址为http://localhost:8080/SampleWeb/sample/user
这是我的表单显示,当我提交表单时,网址重定向到http://localhost:8080/sample/user-by-name
在我的jsp中
<form:form method="POST" action="/sample/user">
<table>
<tr>
在我的控制器中
@Controller
@RequestMapping("/sample")
public class SampleController {
@RequestMapping(value = "/user", method = RequestMethod.GET)
return "redirect:" + "SampleWeb/sample/user-by-name";
当我将重定向网址更改为“/ SampleWeb / sample / user-by-name”时
它适用于Firefox,但在chrome http://localhost:8080/SampleWeb/SampleWeb/sample/user-by-name
中它会增加两倍。
如果我提供return "redirect:" + "/sample/user-by-name";
则表示网址为http://localhost:8080/sample/user-by-name
我是Spring mvc的新手。请任何人都可以帮助我
答案 0 :(得分:0)
从此行<form:form method="POST" action="sample/user-by-name">
答案 1 :(得分:0)
试试这个:
<c:url var="myUrl" value="/sample/user-by-name"/>
<form:form method="POST" action="${myUrl}">
答案 2 :(得分:0)
不要在控制器/ jsp页面中硬编码上下文路径。在JSP页面中提及上下文路径,如下所示。它对我有用。
<form:form method="POST" action="${pageContext.request.contextPath}/sample/user-by-name">
或者
<form:form method="POST" action="<%=request.getContextPath()%>/sample/user-by-name">