使用textarea而不是input type =" text"时使用Servlet null参数

时间:2015-09-15 09:45:29

标签: html jsp servlets

我遇到从JSP页面到java Servlet的参数传递问题。 这是我的JSP代码,

<form action="textAction" method="post">
     <b>Insert text here</b><br>
           <textarea name="text" rows=3 cols=40></textarea><br><br>
     <input type="submit" name="submit" value="submitButton">
</form>

这是我简单的Servlet代码

public class RetrievingAllParams extends HttpServlet 
{
    private static final long serialVersionUID =-4688630293104775447L;

    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
    {
       ` PrintWriter out = response.getWriter();
         String text = request.getParameter("text");
         out.print(text);
         out.close();
    }
 }

}

在这个简单的例子中,我想获取文本区域的文本并将其放在屏幕上,但在实际项目中我必须将此文本放入数据库中。问题是Servlet调用的结果为null。 有人有解决方案??

修改 如果我用简单的表单输入更改textarea,Servlet可以工作......我不明白我的代码中的错误在哪里

2 个答案:

答案 0 :(得分:0)

为FORM标记赋予id属性。

<form action="textAction" method="post" id="myform" name="myform">
 <textarea name="text1" id="text1" rows="3" cols="40"></textarea>
 <input type="submit" name="submit" value="submitButton">
</form>

答案 1 :(得分:-1)

java.lang.String getParameter(java.lang.String name)

  

以String形式返回请求参数的值,如果是,则返回null   参数不存在。请求参数是额外信息   随请求发送。对于HTTP servlet,参数包含在   查询字符串或发布的表单数据。

在致电text

之前,请确认您的request.getParameter("text")参数可用作参数

https://docs.oracle.com/javaee/6/api/javax/servlet/ServletRequest.html#getParameter(java.lang.String)