【发布时间】:2014-11-07 14:21:16
【问题描述】:
我需要一个通过 RPC 序列化 XMLGregorianCalendar 的解决方案。
到目前为止,我为 XMLGregorianCalendar 对象编写了一个自定义序列化程序,但要序列化的对象是 Calendar 类型 (com.sun.org.apache.xerces.internal.jaxp.datatype.XMLGregorianCalendarImpl) 的内部 Xerxes 实现。
所以我的序列化程序失败得很惨,因为它没有被使用。
为内部对象编写序列化程序不是一个好主意,并且会在 Eclipse 中产生警告,表明该类受到限制(访问限制:由于所需库 C:\java\jre\lib 的限制,无法访问 XMLGregorianCalendarImpl 类型\rt.jar)。
有没有人成功地在客户端使用这个带有 GWT 的 XMLGC? 我可以替换 gwt.xml 中的 XMLGC 类并用不同的东西替换它吗?
任何帮助表示赞赏!
更新:
想告诉你到目前为止没有什么效果:
添加了 Supersource 路径并将 XMLGC 类替换为更简单的类,仅携带数据元素。
为 XMLGC 添加了一个自定义序列化程序类,用于从/向轻量级超级源类序列化 XMLGC。
该方法在运行时失败,因为传输的对象不是 XMLGC,而是 com.sun.org.apache.xerces.internal.jaxp.datatype.XMLGregorianCalendarImpl,它位于rt.jar.
对 XMLGCImpl 重复相同步骤的方法对我来说失败了,可能是因为我太笨了,可能是因为密封的包装阻碍了这个过程。
有人可以确认,这种方法应该有效还是因为 Impl 类而注定要失败?也许有一个 GWT 注释/配置,我可以告诉序列化程序接受 XMLGC 序列化程序以用于 XMLGC 的任何扩展?
【问题讨论】:
标签: java gwt serialization