这里,我正在尝试使用LocalDate
和格式化的日期来处理预订系统的开始日期以及结束日期。我已经对出现的错误进行了一些搜索,但是,它们不处理类似的问题。像这里一样,我需要使用request.getParameter
获取用户输入。
//Getting input values from jsp from
String cruiseName = request.getParameter("cruiseName");
DateTimeFormatter df = DateTimeFormatter.ofPattern("dd/MMM/yyyy");
LocalDate startDate =(LocalDate) LocalDate.parse(request.getParameter("startDate"),df);
LocalDate endDate =(LocalDate) LocalDate.parse(request.getParameter("endDate"),df);
错误消息:
Exception
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.time.format.DateTimeParseException: Text '03/10/2020' could not be parsed at index 3
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:901)
javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:875)
javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)**
Root Cause:
java.time.format.DateTimeParseException: Text '03/10/2020' could not be parsed at index 3
java.base/java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:2049)
java.base/java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1951)
java.base/java.time.LocalDate.parse(LocalDate.java:428)
您尝试解析的格式与您获得的格式不同,要么是因为用户要求的格式不正确,要么是因为您使用了错误的格式来解析。
[您正在尝试解析看起来像03 / Oct / 2020的dd/MMM/yyyy
格式,但是从错误消息中获取的格式是dd/MM/yyyy
或MM/dd/yyyy
,从得到的03/10/2020可以是要么。您需要检查期望的输入并调整解析代码,或询问用户特定的格式。