代码之家  ›  专栏  ›  技术社区  ›  Derek Mahar

JAX-WS如何将带时区的XML日期映射到Java日期?

  •  0
  • Derek Mahar  · 技术社区  · 14 年前

    怎样做 JAX-WS 映射一个 XML schema date ( xs:dateTime )一个爪哇人 Date ? 特别是,如果JAX-WS服务器接收到 xs:日期时间 包含时区的,JAX-WS是否将日期转换为服务器时区?例如,假设运行JAX-WS的服务器的XML日期为 2010-08-20T00:00:00-04:00 在JAX-WS将日期映射到Java之后,服务器在时区UTC-5中运行 日期 财产 now ,什么字符串 now.toString() 生产?

    给定一组XML日期作为输入,JAX-WS将这些日期映射到一组Java 日期 对象,但在日志中,令我惊讶的是,我看到了EST和EDT时区的混合,而我希望看到的是当前主机时区EST中的所有日期。

    1 回复  |  直到 14 年前
        1
  •  3
  •   Catchwa    14 年前

    Date.toString()根据服务器的时区打印时间。

    例如。

    SimpleTimeZone stz = new SimpleTimeZone(-18000000, "UTC-5");
    TimeZone.setDefault(stz);
    

    意味着到目前为止的所有调用。toString()的格式都是 Fri Jan 01 0:00:00 GMT-5:00 2010

    因此,如果您有一个接受输入的web服务 Date 如果不做任何更改就返回了它,它将被更改为与服务器的时区匹配。

    如果你还有什么问题,我建议你自己玩。