XPage Dojo DateTextBox NotSerializableException

时间:2012-07-18 09:09:59

标签: xpages xpages-extlib

我有一个包含dojo DateTextBox的xpage。如果我保存文档,一切都很好。但是如果我重新打开文档,我会得到以下例外:

Unexpected runtime error
The runtime has encountered an unexpected error.
Error source
Page Name:/OfferAccount.xsp

Exception
java.io.NotSerializableException: lotus.domino.local.DateTime
lotus.domino.local.DateTime

Stack Trace:

com.ibm.xsp.FacesExceptionEx: java.io.NotSerializableException: lotus.domino.local.DateTime
    com.ibm.xsp.application.AbstractStateManager.saveSerializedView(AbstractStateManager.java:121)
    com.ibm.xsp.application.StateManagerImpl.saveSerializedView(StateManagerImpl.java:152)
    com.ibm.xsp.application.ViewHandlerExImpl._saveViewState(ViewHandlerExImpl.java:445)
    com.ibm.xsp.application.ViewHandlerExImpl.saveViewState(ViewHandlerExImpl.java:439)
    com.ibm.xsp.application.ViewHandlerExImpl._renderView(ViewHandlerExImpl.java:323)
    com.ibm.xsp.application.ViewHandlerExImpl.renderView(ViewHandlerExImpl.java:335)

以下是我的xpage中的DateTextBox的代码:

<xe:djDateTextBox
id="periodOfInsuranceBeginn" value="#{offerAccount.d_offerPolicyBegin}">
<xe:this.defaultValue><![CDATA[#{javascript:var today:NotesDateTime = 
session.createDateTime(@Today());   
return I18n.parseDate(today.getDateOnly());}]]></xe:this.defaultValue>
<xp:this.converter>
<xp:convertDateTime type="date" dateStyle="short">
</xp:convertDateTime>
</xp:this.converter>
</xe:djDateTextBox>

如果我使用dateTime类型的EditBox,也会发生此异常。

有什么想法吗? 谢谢马里奥

1 个答案:

答案 0 :(得分:1)

您的代码中似乎使用了Notes对象(NotesDateTime)。 Notes对象不可序列化。将它们存储为Java日期,如果访问它们,则将它们转换回NotesDateTime对象。