错误:无法在jsp

时间:2015-06-09 08:55:15

标签: java forms jsp spring-mvc

我在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)

3 个答案:

答案 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值中。