@GET @Produces(MediaType.APPLICATION_JSON) public Response getItem(@QueryParam("propertyName") String propertyName, @QueryParam("term") String term) { AutocompleteResult result = new AutocompleteResult(); String query = QueryBuilder.getAutocompleteSuggestion(propertyName); try { TupleQueryResult queryResult = new QueryExecutor(StorageManager.INSTANCE.getRepository()).executeQuery(query); while (queryResult.hasNext()) { BindingSet set = queryResult.next(); AutocompleteItem item = new AutocompleteItem(set.getValue("label").stringValue(), set.getValue("value").stringValue()); if (item.getLabel().startsWith(term)) result.add(item); } } catch (QueryEvaluationException | RepositoryException | MalformedQueryException e) { e.printStackTrace(); } return ok(result); }