Java Retrieve Action Timezone issue.

0
Hello  We are using a java action to perform a retrieve and retrieve clause compares data.  The functionality is working fine for all countries , except for NZ and AU we are getting error “java.time.zone.ZoneRulesException: Unknown time-zone ID: Etc/GMT+13” .  CompletionDate is a date/time column.   Can someone please provide any pointers as what’s going wrong for this. I am trying to debug java action  but am unable to run application from eclipse. Am getting proxy Timeout error.     [(CompletionDate > ''' + formatDateTimeUTC($TimeSheet/WeekEndDate ,'yyyyMMddhhMMss') + ''' or CompletionDate = empty)]'      Caused by: java.time.zone.ZoneRulesException: Unknown time-zone ID: Etc/GMT+13     at java.base/java.time.zone.ZoneRulesProvider.getProvider(ZoneRulesProvider.java:279)     at java.base/java.time.zone.ZoneRulesProvider.getRules(ZoneRulesProvider.java:234)     at java.base/java.time.ZoneRegion.ofId(ZoneRegion.java:120)     at java.base/java.time.ZoneId.of(ZoneId.java:408)     at java.base/java.time.ZoneId.of(ZoneId.java:356)     at java.base/java.time.ZoneId.of(ZoneId.java:312)     at java.base/java.util.TimeZone.toZoneId0(TimeZone.java:573)     at java.base/java.util.TimeZone.toZoneId(TimeZone.java:550)     at com.mendix.shared.util.DateUtils$.parseDateIntoZonedDateTime(DateUtils.scala:43)     at com.mendix.shared.util.DateUtils.parseDateIntoZonedDateTime(DateUtils.scala)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.parseToTimestamp(WhereClauseMapper.java:1341)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.parseDateWhereTerm(WhereClauseMapper.java:1320)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.inferReplacementColumn(WhereClauseMapper.java:586)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.handleWhereTermSide(WhereClauseMapper.java:554)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.handleWhereTerm(WhereClauseMapper.java:170)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.map(WhereClauseMapper.java:143)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.map(WhereClauseMapper.java:131)     at com.mendix.connectionbus.retrieve.query.mapping.QueryMapper.mapWhereClauseWhereTerms(QueryMapper.java:740)     at com.mendix.connectionbus.retrieve.query.mapping.QueryMapper.getMappedQueries(QueryMapper.java:243)     at com.mendix.connectionbus.retrieve.query.mapping.QueryMapper.getQueryInstances(QueryMapper.java:145)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.handleSubQuery(WhereClauseMapper.java:1197)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.handleSelectColumn(WhereClauseMapper.java:1063)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.handleWhereTermSide(WhereClauseMapper.java:569)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.handleWhereTerm(WhereClauseMapper.java:170)     at com.mendix.connectionbus.retrieve.query.mapping.WhereClauseMapper.map(WhereClauseMapper.java:143)     at com.mendix.connectionbus.retrieve.query.mapping.QueryMapper.mapWhereClauseWhereTerms(QueryMapper.java:740)     at com.mendix.connectionbus.retrieve.query.mapping.QueryMapper.getMappedQueries(QueryMapper.java:243)     at com.mendix.connectionbus.retrieve.query.mapping.QueryMapper.getQueryInstances(QueryMapper.java:145)     at com.mendix.connectionbus.retrieve.OqlRequestHandler.doOldQueryHandling(OqlRequestHandler.scala:174)     at com.mendix.connectionbus.retrieve.OqlRequestHandler.handleError$1(OqlRequestHandler.scala:68)     at com.mendix.connectionbus.retrieve.OqlRequestHandler.handleRequest(OqlRequestHandler.scala:102)     at com.mendix.connectionbus.retrieve.DataStoreCaller.processOqlGetRequest(DataStoreCaller.scala:41)     at com.mendix.connectionbus.retrieve.DataStoreCaller.$anonfun$getResult$1(DataStoreCaller.scala:35)     at scala.collection.TraversableLike.$anonfun$flatMap$1(TraversableLike.scala:245)     at scala.collection.IndexedSeqOptimized.foreach(IndexedSeqOptimized.scala:36)     at scala.collection.IndexedSeqOptimized.foreach$(IndexedSeqOptimized.scala:33)     at scala.collection.mutable.WrappedArray.foreach(WrappedArray.scala:38)     at scala.collection.TraversableLike.flatMap(TraversableLike.scala:245)     at scala.collection.TraversableLike.flatMap$(TraversableLike.scala:242)     at scala.collection.AbstractTraversable.flatMap(Traversable.scala:108)     at com.mendix.connectionbus.retrieve.DataStoreCaller.getResult(DataStoreCaller.scala:35)     at com.mendix.connectionbus.retrieve.DataStoreCaller.getResult(DataStoreCaller.scala:33)     at com.mendix.connectionbus.retrieve.GetRequestHandler.doRequest(GetRequestHandler.java:66)     at com.mendix.connectionbus.RequestAnalyzer.doRequest(RequestAnalyzer.java:49)     at com.mendix.connectionbus.ConnectionBusImpl.doRequest(ConnectionBusImpl.java:518)     at com.mendix.basis.action.user.RetrieveXPathRawAction.retrieveXPathRaw(RetrieveXPathRawAction.java:132)  
asked
1 answers
1

Are you using one of the recommended java jdks? https://docs.mendix.com/refguide/system-requirements#7-3-java

Apparently not all java distributions cover all timezone data, so i read on stackoverflow.

If that is not the issue, you may want to check if one of your userlib jars contains a specific version on the TimeZone class.

Or create a Mendix support ticket, it should not work like this of course.

I hope this helps.

answered