diff --git a/src/main/java/cz/cvut/kbss/jsonld/jackson/serialization/JacksonJsonLdSerializer.java b/src/main/java/cz/cvut/kbss/jsonld/jackson/serialization/JacksonJsonLdSerializer.java index 1b326e3..6f88037 100644 --- a/src/main/java/cz/cvut/kbss/jsonld/jackson/serialization/JacksonJsonLdSerializer.java +++ b/src/main/java/cz/cvut/kbss/jsonld/jackson/serialization/JacksonJsonLdSerializer.java @@ -44,9 +44,10 @@ public void serialize(T value, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException { if (shouldUseBaseSerializer(value)) { baseSerializer.serialize(value, jsonGenerator, serializerProvider); + } else { + final JsonLdSerializer serializer = createSerializer(jsonGenerator); + serializer.serialize(value); } - final JsonLdSerializer serializer = createSerializer(jsonGenerator); - serializer.serialize(value); } private boolean shouldUseBaseSerializer(T value) { diff --git a/src/test/java/cz/cvut/kbss/jsonld/jackson/serialization/JsonLdSerializationTest.java b/src/test/java/cz/cvut/kbss/jsonld/jackson/serialization/JsonLdSerializationTest.java index 7f485c4..7abac85 100644 --- a/src/test/java/cz/cvut/kbss/jsonld/jackson/serialization/JsonLdSerializationTest.java +++ b/src/test/java/cz/cvut/kbss/jsonld/jackson/serialization/JsonLdSerializationTest.java @@ -277,4 +277,13 @@ void serializationReusesContextForCollection() throws Exception { assertThat(map, hasKey(JsonLd.CONTEXT)); assertThat(map, hasKey(JsonLd.GRAPH)); } + + @Test + void serializationOfCollectionOfNonEntitiesFallsBackToBaseJacksonSerializer() throws Exception { + final List values = Arrays.asList(Generator.generateUri(), Generator.generateUri()); + final String result = objectMapper.writeValueAsString(values); + final ObjectMapper baseObjectMapper = new ObjectMapper(); + final String baseJson = baseObjectMapper.writeValueAsString(values); + assertEquals(baseJson, result); + } }