- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我需要一个通过 RPC 序列化 XMLGregorianCalendar 的解决方案。
到目前为止,我为 XMLGregorianCalendar 对象编写了一个自定义序列化程序,但要序列化的对象是 Calendar 类型的内部 Xerxes 实现 (com.sun.org.apache.xerces.internal.jaxp.datatype.XMLGregorianCalendarImpl)。
所以我的序列化器严重失败,因为它没有被使用。
为内部对象编写序列化程序不是一个好主意,并且会在 Eclipse 中产生警告,表明该类受到限制(访问限制:由于所需库 C:\java\jre\lib\rt.jar 的限制,无法访问类型 XMLGregorianCalendarImpl)。
有人曾经成功地在客户端使用过带有 GWT 的 XMLGC 吗?我可以替换 gwt.xml 中的 XMLGC 类并用不同的东西替换它吗?
感谢任何帮助!
更新:
想告诉您到目前为止什么不起作用:
添加了 Supersource 路径,并用一个更简单的类替换了 XMLGC 类,仅携带数据元素。
为 XMLGC 添加了自定义序列化器类,以将 XMLGC 序列化到轻量级 super 源类。
该方法在运行时失败,因为传输的对象不是 XMLGC,而是 com.sun.org.apache.xerces.internal.jaxp.datatype.XMLGregorianCalendarImpl,位于 rt.jar 的密封包中。
对 XMLGCImpl 重复相同步骤的方法对我来说失败了,也许是因为我太笨了,也许是因为密封包装阻碍了这个过程。
有人可以确认这种方法应该有效吗?或者该方法是否会因为 Impl 类而注定失败?也许有一个 GWT 注释/配置,我可以在其中告诉序列化器接受任何 XMLGC 扩展的 XMLGC 序列化器?
最佳答案
问题不在于 RPC 序列化。问题是 XMLGregorianCalendar
不是 emulated ,所以不能在客户端使用。通过 RPC 序列化它没有帮助。
有一个issue to add better javax.time support to GWT ,但是模拟这些日期和时间 API 非常复杂,因此仍在进行中。
目前,作为一种解决方法,我建议在 DTO 中使用 java.util.Date
,并在服务器端使用映射层,将包含 XMLGregorianCalendar 的“服务器 POJO”转换为包含日期的“GWT DTO”。
此外,在谷歌搜索时,我发现 this class ,这是 Enunciate 的一部分图书馆。它可能对服务器端的 XMLGregorianCalendar <--> 日期映射有用。
关于java - 如何为 XMLGregorianCalendar 编写 GWT CustomSerializer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26803294/
下面是我的代码 GregorianCalendar gregory=new GregorianCalendar(); gregory.setTime(new Date()); XMLGregorian
我目前遇到了 XMLGregorianCalendar 格式化问题,想向 Java 专家寻求帮助。通过来自其他系统的函数调用,我在网页上显示了一个数据对象,其中包含“SUBMIT_DATE”:1516
在我们的应用程序中,我们使用提供肥皂响应 XML(文档样式)的 Web 服务。 当我检查网络服务提供商时,他们只是一个转换的接口(interface)他们从不同来源获取的响应节点值(Subscribe
这个问题已经有答案了: Calendar to Date conversion for dates before 15 Oct 1582. Gregorian to Julian calendar s
我使用下面的代码在 Web 服务中设置 XMLGregorianCalendar 字段 SimpleDateFormat format = new SimpleDateFormat("dd-MMM-y
我从数据库中获取一些日期,将它们放入使用 JAXB 从 XSD 模式派生的类的对象中,然后将对象编码到 XML 文件。 其中一个派生类具有 XMLGregorianCalendar 字段,我希望将放在
这个问题已经有答案了: java.util.Date to XMLGregorianCalendar (10 个回答) 已关闭 7 年前。 我从字符串日期转换为 XMLGregorianCalenda
这个问题在这里已经有了答案: Why does sdf.format(date) converts 2018-12-30 to 2019-12-30 in java? [duplicate] (3
我正在创建一系列日期,以 JSON 字符串的形式存储在数据库中,并且它们全部保存为 GMT(例如,2015-05-01T13:00:00.000Z)。我的计算机采用 GMT+2,因此当我尝试显示它们时
我在将日历对象转换为 YYYY-MM-DD HH:mm:ss 格式的 XML 公历时遇到了一些问题。 我当前的代码是: Calendar createDate = tRow.getBasic().ge
我需要从 XML 填充 JAX Bean,但是没有 setter 方法。我在下面收到以下消息 Failed to invoke public javax.xml.datatype.XMLGregor
我如何比较 XMLGregorianCalendar 的 2 个实例以找出哪个更大? 其中一个日期变量有值 date1 = 2009-02-23T05:54:17+05:30 还有一个, date2
使用 Java 1.6 wsimport 我从 WSDL 为 Web 服务生成了源代码。请求结构中的一个字段在 WSDL 包含的 XML 架构中具有类型 xs:dateTime,在生成的代码中具有类型
我正在开发一个以 XML 形式来回调用的 Web 服务程序。然而,我的问题不在于此。当我在我的机器上本地(在 Eclipse 中)运行它时,它似乎可以工作。但是,当我的同事运行它时/如果我尝试在服务器
我在 UI 中有以下格式的日期.. Eg: Thu. 03/01 我将它们转换为 XMLGregorianCalendar,如下所述。 final DateFormat format = new Si
我必须通过 jax-ws 公开一个 ejb 服务层。 我已经使用 jax-ws 和 wsimport 生成了 Web 服务,但我被一个奇怪的事情阻止了;日期被映射到 XmlGregorianCalen
我有一个日期作为输入 = 2021-03-12T10:42:01.000Z.... 我想转换成这种格式: String pattern = "yyyy-MM-dd'T'HH:mm:ssZ"; publ
我有一个 XML Jaxb 类来设置 XMLGregorianCalendar 类型。但是我们应该在这个属性中只设置年份。 XMLGregorianCalendar xmlCal = Datatype
我有一个日期作为输入 = 2021-03-12T10:42:01.000Z.... 我想转换成这种格式: String pattern = "yyyy-MM-dd'T'HH:mm:ssZ"; publ
我有一个 XML Jaxb 类来设置 XMLGregorianCalendar 类型。但是我们应该在这个属性中只设置年份。 XMLGregorianCalendar xmlCal = Datatype
我是一名优秀的程序员,十分优秀!