来自html的java httpservlet getparameter返回null
我正在服务器上运行一个.jsp文件,并试图将用户输入表单数据发送到HttpServlet中的“doPost”方法 当我尝试在doPost中打印用户输入的VAL时,它们为空 我试图通过它们的html ID获取VAL,但由于某些原因,这不起作用。HTML中可能有一个简单的问题 submit按钮似乎正在正常运行,因为它正在返回到我试图解析用户输入数据的.java文件。只有VAL为空 这是我的密码 谢谢!:)来自html的java httpservlet getparameter返回null,java,html,servlets,Java,Html,Servlets,我正在服务器上运行一个.jsp文件,并试图将用户输入表单数据发送到HttpServlet中的“doPost”方法 当我尝试在doPost中打印用户输入的VAL时,它们为空 我试图通过它们的html ID获取VAL,但由于某些原因,这不起作用。HTML中可能有一个简单的问题 submit按钮似乎正在正常运行,因为它正在返回到我试图解析用户输入数据的.java文件。只有VAL为空 这是我的密码 谢谢!:) 二进制编码器 二进制编码:对0到65535之间的任何数字进行编码 日期= 输入要编码的数字(
二进制编码器
二进制编码:对0到65535之间的任何数字进行编码
日期=
输入要编码的数字(0到65536):
输入编码的第一个数字(0到255):
输入第二个编码数字(0到255):
受保护的void doPost(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{
doGet(请求、响应);
//处理表单的代码。。。
字符串toencode=request.getParameter(“toencode”);
字符串mask1=request.getParameter(“mask1”);
字符串mask2=request.getParameter(“mask2”);
//响应是返回到HTML页面的东西
PrintWriter out=response.getWriter();
字符串输出=String.format(“要编码的数字是:%s”,toencode);
String op1=String.format(“Mask1是:%s”,Mask1);
String op2=String.format(“Mask2是:%s”,Mask2);
out.println(输出);
out.println(op1);
out.println(op2);
}
三种输入的类型应该是文本,而不是数字。试试看。在三个表单输入字段中,使用name
属性代替id
,或者在id
之外使用。只有这些输入字段的值作为参数包含在请求中。问题在于这些标记,例如:
标记需要一个名称
属性,如:name=“mynumber”
servlet从JSP接收请求参数的名称-值对。JSP中缺少名称
。编写JSP代码的正确方法是:
在servlet程序中,通过doPost
方法访问发布的参数及其值,如下所示:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
String myNumber = request.getParameter("mynumber");
getServletContext().log("# My Number: " + myNumber); // this prints in the log file
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("My Number: " + myNumber); // this prints on the browser page
}
这将显示您在浏览器页面的JSP中输入的号码,如:
My number:999
。您还可以参考服务器日志。将名称属性添加到输入中,如下所示:
<input type="number" name="toencode" id="toencode">
<input type="number" name="mask1" id="mask1">
<input type="number" name="mask2" id="mask2">
request.getParameter
无法识别id属性。您的表单似乎缺少所有字段的name
属性
尝试更改此选项:
<input type="number" id="toencode">
显然,对于其他字段(mask1、mask2),
name
s值将匹配它们的id
s将所有类型更改为“text”,但仍然不起作用。你确定它需要是文本吗?我正试图在这个表单中输入数字。@MukulK。也许这不是问题,H5中添加了数字类型。为什么在这里称为doGet方法?您可以删除它或将下面的代码剪切为doGet方法。这解决了我的问题。非常感谢!!:)现在我也有了Java中的用户输入,请参见以下内容:和。
<input type="number" id="toencode">
<input type="number" id="toencode" name="toencode">