我在jsp页面中使用method="post"
表单提交。
<form action="addpost.do" method ="post">
<input type="hidden" value="anuj" name="myname" >
<input type="submit" value="submit" >
</form>
在表单中,我在隐藏字段中传递两个值,并在java中获取这些值。但是表单提交错误即将出现,您无法使用GET方法。
在我的java文件中,必需的操作有post方法。
@RequestMapping(value="/addpost", method=RequestMethod.POST)
答案 0 :(得分:0)
如果是JSP-servlet,请使用servlet中的doPost(...){...}
。
如果它是一个spring-mvc那么
@RequestMapping(value="/", method=RequestMethod.POST)
以上行必须用于在Controller类中接收POST请求。
答案 1 :(得分:0)
你能发布你的代码吗,我刚才测试的确不错。 这是我的代码:
jsp pages:
<form action="<%=basePath%>index/testGet" method="get">
<input value="111" name="testTxt" type="hidden" >
<input type="submit" value="testGet" >
</form>
springMVC控制器:
@RequestMapping(value="/testGet")
public String testGet(String testTxt){
System.out.print("testTxt:");
System.out.println(testTxt);
return "redirect:/index";
}
和控制台的日志:
testTxt:111
我的英语不好,原谅我。
答案 2 :(得分:0)
我认为您的表单操作网址未映射到您的请求映射中的网址。 请尝试以下方法:
<c:url value="/addpost" var="addPost"/>
<form action="${addPost}" method="POST">
哪个应为您生成正确的网址。不要忘记将taglib包含在jsp:
之上<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
同时检查您的控制器是否有请求映射注释,在这种情况下它应该包含在c:url值中。