从传递电话号码的表单提交中获取NumberFormat异常。但是,传递的数字实际上是一个数字,我将它转换为servlet中的int。在此错误信息,你可以看到一个int在进入 - 8456640236.将整数传递给Servlet
Servlet的方法
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
{
Contact newComment = new Contact();
newComment.setName(request.getParameter("nameParameter"));
newComment.setEmail(request.getParameter("emailParameter"));
newComment.setPhone(Integer.parseInt(request.getParameter("phoneParameter")));
newComment.setComment(request.getParameter("commentParameter"));
request.setAttribute("commentAttribute", newComment);
RequestDispatcher view = request.getRequestDispatcher("/successComment.jsp");
view.forward(request, response);
}
错误消息
java.lang.NumberFormatException: For input string: "8456640236"
java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
java.lang.Integer.parseInt(Integer.java:461)
java.lang.Integer.parseInt(Integer.java:499)
org.test.Servlet.doPost(Servlet.java:21)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
看起来你需要一个Long值。 –
电话号码不应被视为数字。他们是数字字符串。 –