private void processExecuteSparqlRequest(VitroRequest vreq) { String sparqlQueryStr = vreq.getParameter("sparqlQueryStr"); OntModel jenaOntModel = ModelAccess.on(getServletContext()).getOntModel(); jenaOntModel.enterCriticalSection(Lock.READ); List<Individual> savedQueryList = new LinkedList<Individual>(); try { Resource sparqlConstructClassRes = ResourceFactory.createResource(SPARQL_CONSTRUCT_CLASS); savedQueryList.addAll(jenaOntModel.listIndividuals(sparqlConstructClassRes).toList()); } finally { jenaOntModel.leaveCriticalSection(); } /*ass92*/ OntologyDao daoObj = vreq.getUnfilteredWebappDaoFactory().getOntologyDao(); List<Ontology> ontologiesObj = daoObj.getAllOntologies(); List<String> prefixList = new ArrayList<>(); if (ontologiesObj != null && ontologiesObj.size() > 0) { Iterator<Ontology> ontItr = ontologiesObj.iterator(); while (ontItr.hasNext()) { Ontology ont = ontItr.next(); prefixList.add(ont.getPrefix() == null ? "(not yet specified)" : ont.getPrefix()); prefixList.add(ont.getURI() == null ? "" : ont.getURI()); } } else { prefixList.add("<strong>" + "No Ontologies added" + "</strong>"); prefixList.add("<strong>" + "Load Ontologies" + "</strong>"); } vreq.setAttribute("prefixList", prefixList); /*complete*/ if (sparqlQueryStr != null) { String validationMessage = ""; if (vreq.getParameterValues("sourceModelName") == null) { validationMessage += "<p>Please select one or more source models.</p>"; } if (vreq.getParameter("destinationModelName") == null) { validationMessage += "<p>Please select a destination model</p>"; } if (validationMessage.length() > 0) { vreq.setAttribute("validationMessage", validationMessage); } else { long constructedStmtCount = 0; try { constructedStmtCount = doExecuteSparql(vreq); } catch (QueryParseException qpe) { String errorMsg = "<p>Unable to parse query:</p>"; if (qpe.getMessage() != null) { errorMsg += "<p>" + qpe.getMessage() + "</p>"; } vreq.setAttribute("errorMsg", errorMsg); } catch (InconsistentOntologyException ioe) { String errorMsg = "<p>Inconsistent source ontology:</p>"; if (ioe.getMessage() != null) { errorMsg += "<p>" + ioe.getMessage() + "</p>"; } vreq.setAttribute("errorMsg", errorMsg); } vreq.setAttribute("constructedStmtCount", constructedStmtCount); } vreq.setAttribute("savedQueries", savedQueryList); vreq.setAttribute("title", "SPARQL CONSTRUCT result"); vreq.setAttribute("bodyJsp", EXECUTE_SPARQL_JSP); } else { vreq.setAttribute("savedQueries", savedQueryList); vreq.setAttribute("title", "Execute SPARQL Construct"); vreq.setAttribute("bodyJsp", EXECUTE_SPARQL_JSP); } }