2016-06-14 141 views
0

我有以下代碼:解析功能不能正常工作

String date_p = request.getParameter("myText"); 
    DateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy"); 
    java.util.Date frmDate = sdf.parse(date_p); 

我得到的錯誤是:

type Exception report 

message An exception occurred processing JSP page /demo3.jsp at line 22 

description The server encountered an internal error that prevented it from fulfilling this request. 

exception 
org.apache.jasper.JasperException: An exception occurred processing JSP page /demo3.jsp at line 22 

19: 
20:  String date_p = request.getParameter("myText"); 
21:  DateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy"); 
22:  java.util.Date frmDate = sdf.parse(date_p); 

Stacktrace: 
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:575) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:477) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731) 
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 



root cause 
java.lang.NullPointerException 
    java.text.SimpleDateFormat.parse(Unknown Source) 
    java.text.DateFormat.parse(Unknown Source) 
    org.apache.jsp.demo3_jsp._jspService(demo3_jsp.java:106) 
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:439) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731) 
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 

爲什麼不工作的解析函數? 我已經導入這些包,以及 -

+0

是你的問題是一個NPE,閱讀你的棧跟蹤 –

+0

@NicolasFilotto它的一個JSP頁面。 date_p值取自用戶。我不能在這裏理解的問題 – StevieG

回答

2

date_p似乎是空,你需要檢查你通過一個屬性myText「的java.sql ,java.util中,java.text中的*。」在你的GET參數或POST參數中。

+0

它是存在於代碼:

\t

接口表

\t \t​​文本: \t \t​​<輸入類型= 「文本」 名稱= 「會將myText」 ID = 「會將myText」 值= 「」> \t \t​​ \t <% \t String date_p = request.getParameter(「myText」); \t DateFormat sdf = new SimpleDateFormat(「dd-MMM-yyyy」); \t java.util.Date frmDate = sdf.parse(date_p); – StevieG

+0

​​值爲null,因爲Mifmif說 – erolkaya84

+0

你想用你的'frmDate'做什麼?在頁面的第一次加載中,請求中沒有傳遞任何參數,因此您將爲'date_p'獲取空值。 – Mifmif