diff --git a/pom.xml b/pom.xml index 100c51c5e37..dfdf11dca34 100644 --- a/pom.xml +++ b/pom.xml @@ -545,11 +545,6 @@ logback-classic ${logback.version} - - org.json - json - 20140107 - junit diff --git a/tools/pom.xml b/tools/pom.xml index 4881dc5328e..94641c5fe5f 100644 --- a/tools/pom.xml +++ b/tools/pom.xml @@ -238,11 +238,6 @@ logback-classic ${logback.version} - - org.json - json - 20140107 - junit diff --git a/tools/workbench/pom.xml b/tools/workbench/pom.xml index 0ca3893573e..356cee7c65a 100644 --- a/tools/workbench/pom.xml +++ b/tools/workbench/pom.xml @@ -74,10 +74,6 @@ mockito-core test - - org.json - json - diff --git a/tools/workbench/src/main/java/org/eclipse/rdf4j/workbench/commands/DeleteServlet.java b/tools/workbench/src/main/java/org/eclipse/rdf4j/workbench/commands/DeleteServlet.java index 30013af4a90..35b8ac76026 100644 --- a/tools/workbench/src/main/java/org/eclipse/rdf4j/workbench/commands/DeleteServlet.java +++ b/tools/workbench/src/main/java/org/eclipse/rdf4j/workbench/commands/DeleteServlet.java @@ -20,13 +20,17 @@ import org.eclipse.rdf4j.workbench.base.TransformationServlet; import org.eclipse.rdf4j.workbench.util.TupleResultBuilder; import org.eclipse.rdf4j.workbench.util.WorkbenchRequest; -import org.json.JSONObject; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ObjectNode; /** * Servlet responsible for presenting the list of repositories, and deleting the chosen one. */ public class DeleteServlet extends TransformationServlet { + private static final ObjectMapper mapper = new ObjectMapper(); + /** * Deletes the repository with the given ID, then redirects to the repository selection page. If given a "checkSafe" * parameter, instead returns JSON response with safe field set to true if safe, false if not. @@ -45,8 +49,10 @@ protected void service(WorkbenchRequest req, HttpServletResponse resp, String xs super.service(req, resp, xslPath); } else { // Respond to 'checkSafe' XmlHttpRequest with JSON. + ObjectNode jsonObject = mapper.createObjectNode(); + jsonObject.put("safe", manager.isSafeToRemove(checkSafe)); final PrintWriter writer = new PrintWriter(new BufferedWriter(resp.getWriter())); - writer.write(new JSONObject().put("safe", manager.isSafeToRemove(checkSafe)).toString()); + writer.write(mapper.writeValueAsString(jsonObject)); writer.flush(); } diff --git a/tools/workbench/src/main/java/org/eclipse/rdf4j/workbench/commands/QueryServlet.java b/tools/workbench/src/main/java/org/eclipse/rdf4j/workbench/commands/QueryServlet.java index 16a33276434..c1200fcf0e3 100644 --- a/tools/workbench/src/main/java/org/eclipse/rdf4j/workbench/commands/QueryServlet.java +++ b/tools/workbench/src/main/java/org/eclipse/rdf4j/workbench/commands/QueryServlet.java @@ -47,11 +47,12 @@ import org.eclipse.rdf4j.workbench.util.QueryStorage; import org.eclipse.rdf4j.workbench.util.TupleResultBuilder; import org.eclipse.rdf4j.workbench.util.WorkbenchRequest; -import org.json.JSONException; -import org.json.JSONObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ObjectNode; + public class QueryServlet extends TransformationServlet { protected static final String REF = "ref"; @@ -72,6 +73,8 @@ public class QueryServlet extends TransformationServlet { private static final QueryEvaluator EVAL = QueryEvaluator.INSTANCE; + private static final ObjectMapper mapper = new ObjectMapper(); + private QueryStorage storage; protected boolean writeQueryCookie; @@ -157,7 +160,7 @@ protected boolean shouldWriteQueryCookie(String queryText) { @Override protected void service(final WorkbenchRequest req, final HttpServletResponse resp, final String xslPath) - throws IOException, RDF4JException, BadRequestException, JSONException { + throws IOException, RDF4JException, BadRequestException { if (!writeQueryCookie) { // If we suppressed putting the query text into the cookies before. cookies.addCookie(req, resp, REF, "hash"); @@ -167,11 +170,11 @@ protected void service(final WorkbenchRequest req, final HttpServletResponse res cookies.addCookie(req, resp, QUERY, hash); } if ("get".equals(req.getParameter("action"))) { - JSONObject json = new JSONObject(); - json.put("queryText", getQueryText(req)); + ObjectNode jsonObject = mapper.createObjectNode(); + jsonObject.put("queryText", getQueryText(req)); PrintWriter writer = new PrintWriter(new BufferedWriter(resp.getWriter())); try { - writer.write(json.toString()); + writer.write(mapper.writeValueAsString(jsonObject)); } finally { writer.flush(); } @@ -201,7 +204,7 @@ private void handleStandardBrowserRequest(WorkbenchRequest req, HttpServletRespo @Override protected void doPost(final WorkbenchRequest req, final HttpServletResponse resp, final String xslPath) - throws IOException, BadRequestException, RDF4JException, JSONException { + throws IOException, BadRequestException, RDF4JException { final String action = req.getParameter("action"); if ("save".equals(action)) { saveQuery(req, resp); @@ -237,17 +240,19 @@ protected void doPost(final WorkbenchRequest req, final HttpServletResponse resp } private void saveQuery(final WorkbenchRequest req, final HttpServletResponse resp) - throws IOException, BadRequestException, RDF4JException, JSONException { + throws IOException, BadRequestException, RDF4JException { resp.setContentType("application/json"); - final JSONObject json = new JSONObject(); + ObjectNode jsonObject = mapper.createObjectNode(); + jsonObject.put("queryText", getQueryText(req)); + final HTTPRepository http = (HTTPRepository) repository; final boolean accessible = storage.checkAccess(http); - json.put("accessible", accessible); + jsonObject.put("accessible", accessible); if (accessible) { final String queryName = req.getParameter("query-name"); String userName = getUserNameFromParameter(req, SERVER_USER); final boolean existed = storage.askExists(http, queryName, userName); - json.put("existed", existed); + jsonObject.put("existed", existed); final boolean written = Boolean.valueOf(req.getParameter("overwrite")) || !existed; if (written) { final boolean shared = !Boolean.valueOf(req.getParameter("save-private")); @@ -262,10 +267,10 @@ private void saveQuery(final WorkbenchRequest req, final HttpServletResponse res storage.saveQuery(http, queryName, userName, shared, queryLanguage, queryText, infer, rowsPerPage); } } - json.put("written", written); + jsonObject.put("written", written); } final PrintWriter writer = new PrintWriter(new BufferedWriter(resp.getWriter())); - writer.write(json.toString()); + writer.write(mapper.writeValueAsString(jsonObject)); writer.flush(); }