This is an automated email from the ASF dual-hosted git repository. rombert pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-validation-test-services.git
commit e5d950c9c49e23d3c6018f661411dde17aafcc66 Author: Karl Pauls <[email protected]> AuthorDate: Thu Jun 1 21:52:32 2017 +0000 SLING-6913: Remove commons.json from validation/test-services git-svn-id: https://svn.apache.org/repos/asf/sling/trunk@1797279 13f79535-47bb-0310-9956-ffa450edef68 --- pom.xml | 13 +++++++---- .../internal/ValidationPostResponse.java | 27 +++++++++++----------- 2 files changed, 21 insertions(+), 19 deletions(-) diff --git a/pom.xml b/pom.xml index 24c6100..8f37260 100644 --- a/pom.xml +++ b/pom.xml @@ -47,6 +47,9 @@ <configuration> <instructions> <Sling-Initial-Content>SLING-CONTENT/apps/sling/validation;overwrite:=true;path:=/apps/sling/validation</Sling-Initial-Content> + <Embed-Dependency> + org.apache.felix.utils;inline=org/apache/felix/utils/json/JSONWriter.class + </Embed-Dependency> </instructions> </configuration> </plugin> @@ -100,14 +103,14 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>org.apache.sling</groupId> - <artifactId>org.apache.sling.commons.json</artifactId> - <version>2.0.6</version> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> <scope>provided</scope> </dependency> <dependency> - <groupId>org.slf4j</groupId> - <artifactId>slf4j-api</artifactId> + <groupId>org.apache.felix</groupId> + <artifactId>org.apache.felix.utils</artifactId> + <version>1.9.0</version> <scope>provided</scope> </dependency> </dependencies> diff --git a/src/main/java/org/apache/sling/validation/testservices/internal/ValidationPostResponse.java b/src/main/java/org/apache/sling/validation/testservices/internal/ValidationPostResponse.java index ed04681..43c6640 100644 --- a/src/main/java/org/apache/sling/validation/testservices/internal/ValidationPostResponse.java +++ b/src/main/java/org/apache/sling/validation/testservices/internal/ValidationPostResponse.java @@ -25,9 +25,7 @@ import java.util.ResourceBundle; import javax.annotation.Nonnull; import javax.servlet.http.HttpServletResponse; -import org.apache.sling.commons.json.JSONArray; -import org.apache.sling.commons.json.JSONException; -import org.apache.sling.commons.json.JSONObject; +import org.apache.felix.utils.json.JSONWriter; import org.apache.sling.servlets.post.AbstractPostResponse; import org.apache.sling.validation.ValidationFailure; import org.apache.sling.validation.ValidationResult; @@ -52,27 +50,28 @@ public class ValidationPostResponse extends AbstractPostResponse { protected void doSend(HttpServletResponse response) throws IOException { response.setContentType("application/json"); PrintWriter printWriter = response.getWriter(); - JSONObject jsonResponse = new JSONObject(); + JSONWriter writer = new JSONWriter(printWriter); + writer.object(); boolean validationError = false; if (validationResult != null) { try { - jsonResponse.put("valid", validationResult.isValid()); - JSONArray failures = new JSONArray(); + writer.key("valid").value(validationResult.isValid()); + writer.key("failures").array(); for (ValidationFailure failure : validationResult.getFailures()) { - JSONObject failureJson = new JSONObject(); - failureJson.put("message", failure.getMessage(resourceBundle)); - failureJson.put("location", failure.getLocation()); - failureJson.put("severity", failure.getSeverity()); - failures.put(failureJson); + writer.object(); + writer.key("message").value(failure.getMessage(resourceBundle)); + writer.key("location").value(failure.getLocation()); + writer.key("severity").value(failure.getSeverity()); + writer.endObject(); } - jsonResponse.put("failures", failures); - } catch (JSONException e) { + writer.endArray(); + } catch (IOException e) { LOG.error("JSON error during response send operation.", e); } } else { validationError = true; } - printWriter.write(jsonResponse.toString()); + writer.endObject(); if (validationError) { response.setStatus(HttpServletResponse.SC_BAD_REQUEST); } -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
