使用Apache轴来使用列type="xsd:dateTime"
的WSDL。
在带有普通vanilla请求的SOAP UI中,响应具有 -
<UpdateDateTime>2012-05-08T04:58:00</UpdateDateTime>
然而,当使用轴消费者时,对于相同的值 - l istOfValues[pos].getUpdateDateTime().getTime()
返回不同的时间 -
2012-05-07 21:58:00
。
上面的getUpdateDateTime()
返回java.util.Calendar的实例。
是时区问题还是中间的'T'被解析不正确? 我该如何解决这个问题?
答案 0 :(得分:2)
您如何显示“2012-05-07 21:58:00”?这几乎肯定只是一个时区问题。我怀疑它将2012-05-08T04:58:00视为一个普遍的时间,并将当地时区应用于此。很难说没有看到任何代码或诊断来自哪里,但如果不是只是时区问题,我会感到惊讶。
当然,如果您可以使用Joda Time代替java.util.Date/Calendar
,则可以使用LocalDateTime
这是我怀疑在此处所代表的内容(假设响应中缺少时区信息) )。我不知道Axis是否支持这一点,但值得研究。
答案 1 :(得分:0)
以下是Inspect中的日期时间值的Eclipse调试 -
http://i45.tinypic.com/157zpy1.jpg
&安培; soap UI中的普通请求给出了 -
2012-05-08T04:58:00 印度孟买
对不起,我的第一个回复是指UTC。