XPages:如何将Java Date值放入ObjectObject中


ObjectObject oo= new ObjectObject();
oo.put("name", FBSUtility.wrap("Wiley E."));
oo.put("DoB", new Date());  // <-- no can do

如何在 ObjectObject 中放置 Java Date?日期值没有 .wrap 方法。一定是可能的,因为我可以用

Date d= oo.get("DoB").dateValue();

但是怎么放进去呢?谢谢!!

更新

这是我用了很长时间的:

JSContext jsContext = JavaScriptUtil.getJSContext();
ObjectObject oo = new ObjectObject();
oo.put("due", FBSUtility.wrap(jsContext, due.getTime());

这行得通,但是...它会导致在要序列化对象时出现无法序列化 JavaScript 函数错误。

解决方案是完全放弃JSContext,ObjectObject和ArrayObject对象,并使用其他可用的JSON类之一。我开始使用这两个:

import com.ibm.commons.util.io.json.JsonJavaArray;
import com.ibm.commons.util.io.json.JsonJavaObject;

另一个优点是,人们可以忘记所有关于FBSUtility包装的事情。

最新更新