我正在开发一个基于 JSF 技术的 Web 应用程序。我使用 Eclipse 作为 IDE,并使用 Apache Derby 作为数据库。
获取用户输入时,我将其中一个字段作为日期字段,即出生日期。但是当我更新数据库表时,我得到错误报告。
Date Of Birth:
<h:inputText value="#{employeeBean.dob}">
<f:convertDateTime type="date" pattern="yyyy-mm-dd"/>
</h:inputText>
由于 derby 数据库接受格式为 yyyy-mm-dd 的日期,因此我以相同的方式提供输入,并且也使用了相同的格式。
这是我得到的错误。
Exception while setting value for expression : #{employeeBean.dob} of component with
path : {Component-Path : [Class:javax.faces.component.UIViewRoot,ViewId: /homepage.jsp]
[Class: javax.faces.component.html.HtmlForm,Id: j_id_jsp_996426310_1]
[Class: javax.faces.component.html.HtmlInputText,Id: j_id_jsp_996426310_6]}
Caused by:
java.lang.IllegalArgumentException - Cannot convert 1/8/87 5:39 AM of type class
java.util.Date to class java.sql.Date
有人帮我解决这个问题。