Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Not A Problem
-
API 2.16.2
-
None
-
None
Description
When using org.apache.sling.api.resource.Resource , the method getValueMap ( https://sling.apache.org/apidocs/sling9/org/apache/sling/api/resource/Resource.html#getValueMap-- ), returns a ValueMap of all the properties.
We observed that the "month" in "jcr:lastModified" is off by 1 month. While Year, Day, Hour, Min, Seconds are all correct. Please see the attachments. And this is the same for all Nodes.
The last date modified was "2018-05-29T10:31:49.123-05:00" while the value from the above method returned as below:
jcr:lastModified\"{\"year\":2018,*\"month\":4,\{color}*"dayOfMonth\":29,\"hourOfDay\":10,\"minute\":31,\"second\":49}
We did not test this on all nodes though.
Sample code:
Resource jcrdataResource = resource.getChild("jcr:content"); ValueMap jcrProperties = ResourceUtil.getValueMap(jcrdataResource); ... JsonObject assetMetadataJson.addProperty(hit.getPath(), new Gson().toJson(allProperties)); ... JsonElement assetMetadataJsonElement = new Gson().fromJson(assetMetadataJson.toString(), JsonElement.class); ... JsonObject mainjsonObject.add("assets", assetMetadataJsonElement); return mainjsonObject;