在xpage上我有一个inputtext控件:
<xp:inputText
value="#{employeeBean.employee.dateOfEmployment}">
<xp:this.defaultValue><![CDATA[#{javascript:var dt:NotesDateTime = session.createDateTime("Today");
dt.adjustMonth(-6);
return dt.getDateOnly();}]]></xp:this.defaultValue>
<xp:this.converter>
<xp:convertDateTime type="date"></xp:convertDateTime>
</xp:this.converter>
</xp:inputText>
该值可以是例如:2016-10-06
当我想要保存我的对象时,我会收到以下消息:
此字段不是有效日期
有人可以告诉我这可能是什么原因以及我应该如何纠正我的代码?
答案 0 :(得分:1)
getDateOnly()
函数将NotesDateTime
的日期部分作为字符串返回,但对于需要存储日期的xp:inputText
,您需要使用java.util.Date
。试试这种格式:
@Adjust( @Now(), 0, -6, 0, 0, 0,0);
您可能会注意到输入字段中返回日期的格式不同,但输入控件/服务器将其格式化为日期。如果您需要不同的格式,您可以随时将转换器更改为:
<xp:this.converter>
<xp:convertDateTime pattern="dd-MM-yyyy"></xp:convertDateTime>
</xp:this.converter>