JAX-WS如何将XML schema date(xs:dateTime
)映射到Java Date
?特别是,如果JAX-WS服务器收到包含时区的xs:dateTime
,JAX-WS是否会将日期转换为服务器时区?例如,假设运行JAX-WS的服务器的XML日期为2010-08-20T00:00:00-04:00
,并且服务器在时区UTC-5中运行,此后JAX-WS将日期映射到Java Date
属性{{1 ,now
生成什么字符串?
考虑到XML日期的集合作为输入,JAX-WS会将这些对象映射到Java now.toString()
对象的集合,但是在日志中,令我惊讶的是,我看到了EST和EDT时区的混合我希望看到所有日期都在EST,即当前的主持时区。
答案 0 :(得分:3)
Date.toString()打印相对于服务器时区的时间。
E.g。
SimpleTimeZone stz = new SimpleTimeZone(-18000000, "UTC-5");
TimeZone.setDefault(stz);
表示对Date.toString()的所有调用都采用Fri Jan 01 0:00:00 GMT-5:00 2010
因此,如果您有一个接受输入Date
并且没有任何更改而返回的Web服务,它将被更改为与服务器的时区匹配。
如果您有任何其他问题,我建议您自己玩。