在Apache Camel中格式化UTC的当前日期和时间

时间:2017-08-16 20:08:36

标签: apache-camel

我正在实施与外部服务的集成,这需要当前的日期和时间。该服务的文档说它接受ISO 8601格式的日期时间,但这只是部分正确 - 它不支持时区偏移。

当我在Camel中尝试${date:now:yyyy-MM-dd'T'HH:mm:ssZ}时,我得到2017-08-16T21:45:10+0200,这是该服务无法接受的。

有没有办法让Camel日期格式输出当前日期为UTC?我希望2017-08-16T19:45:10Z代替2017-08-16T21:45:10+0200

我想避免为此编写单独的bean,所以我更喜欢纯粹在XML DSL中实现的解决方案。

1 个答案:

答案 0 :(得分:2)

我设法使用Groovy表达式提出了一个解决方案:

<groovy>
  java.time.ZonedDateTime.now(java.time.ZoneOffset.UTC)
      .format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ssX"))
</groovy>