@RequestMapping(value = "/single/{time}", method = RequestMethod.GET) @ResponseBody public JsonNode getInstant( @PathVariable long time, @RequestParam(required = false) String resolution, @RequestParam(required = false) String timezone) { TimeInstant timeInstant = TimeInstant.fromValueObject(new TimeInstantVO(time, resolution, timezone)); long id; try (Transaction tx = database.beginTx()) { id = timeTree.getOrCreateInstant(timeInstant).getId(); tx.success(); } JsonNode result; try (Transaction tx = database.beginTx()) { result = new JsonNode(database.getNodeById(id)); tx.success(); } return result; }