Skip to content

Commit 8422338

Browse files
authored
FIX writeResourceJsonContent org.forgerock.json.JsonValueException: /: Expecting a java.util.Map (#124)
1 parent 8b78ad3 commit 8422338

File tree

1 file changed

+12
-5
lines changed
  • commons/rest/json-resource-http/src/main/java/org/forgerock/json/resource/http

1 file changed

+12
-5
lines changed

commons/rest/json-resource-http/src/main/java/org/forgerock/json/resource/http/RequestRunner.java

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
* information: "Portions copyright [year] [name of copyright owner]".
1313
*
1414
* Copyright 2012-2016 ForgeRock AS.
15+
* Portions copyright 2020-2024 3A Systems, LLC
1516
*/
1617

1718
package org.forgerock.json.resource.http;
@@ -42,6 +43,7 @@
4243
import static org.forgerock.util.promise.Promises.newResultPromise;
4344

4445
import java.io.IOException;
46+
import java.util.Arrays;
4547
import java.util.List;
4648
import java.util.Map;
4749
import java.util.concurrent.atomic.AtomicBoolean;
@@ -513,12 +515,17 @@ private void writeResourceJsonContent(final ResourceResponse resource)
513515
}
514516
}
515517

516-
for (Map.Entry<String, Object> property : content.asMap().entrySet()) {
517-
final String key = property.getKey();
518-
if (!FIELD_CONTENT_ID.equals(key) && !FIELD_CONTENT_REVISION.equals(key)) {
519-
jsonGenerator.writeFieldName(key);
520-
objectWriter.writeValue(jsonGenerator, property.getValue());
518+
if (content.isMap()) {
519+
for (Map.Entry<String, Object> property : content.asMap().entrySet()) {
520+
final String key = property.getKey();
521+
if (!FIELD_CONTENT_ID.equals(key) && !FIELD_CONTENT_REVISION.equals(key)) {
522+
jsonGenerator.writeFieldName(key);
523+
objectWriter.writeValue(jsonGenerator, property.getValue());
524+
}
521525
}
526+
}else {
527+
jsonGenerator.writeFieldName("content");
528+
objectWriter.writeValue(jsonGenerator, Arrays.asList(new String[]{content.asString()}));
522529
}
523530
jsonGenerator.writeEndObject();
524531
} else {

0 commit comments

Comments
 (0)