By Juergenkress-Oracle on Jan 06, 2016
this article I show some examples of handling XML dateTime and
durations in Groovy in the context of a Oracle BPM 12c application. Working
with dates and durations in Java has always been painful. Mainly
because date and time is a complex thing, with different formats and
time zones and all, but I sometimes wonder if it has not been made
overly complex. Anyway. Working with XML dates is even more complex
because the limited support by XPath functions. Too bad because in BPM
applications that work with dates this has to be done very often, and as
a result I very often see the need to create all kinds of custom XPath
functions to mitigate that.
This issue of complexity is no different for Groovy scripting in Oracle BPM 12c. And let handling of dates be a typical use case for using Groovy scripting because of this limited support by XPath. Therefore, to get you started (and help myself some next time) I would like to share a couple of Groovy code snippets for working with XML dates and durations that may be useful. These example are based on working with the XML dateTime type, and do not handle with the complexity of time zones and different formats. In my practice this is 99% of the use cases that I see.
In my opinion you still should limit using Groovy to handle dates and to the minimum, and rather use custom XPath functions, or create a Java library which you can can import in Groovy. But when you have to, this just might come in handy.
Instantiate an XML Date
you have an XML element of type dateTime, you use an XmlCalender
object. An XmlCalender object with the current time can instantiated as
shown below: Read the complete article here.
For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.