diff --git a/src/main/java/com/exceptionless/exceptionlessclient/utils/Utils.java b/src/main/java/com/exceptionless/exceptionlessclient/utils/Utils.java index 8cf688d..677b728 100644 --- a/src/main/java/com/exceptionless/exceptionlessclient/utils/Utils.java +++ b/src/main/java/com/exceptionless/exceptionlessclient/utils/Utils.java @@ -17,6 +17,7 @@ public final class Utils { JSON_MAPPER = new ObjectMapper(); JSON_MAPPER.registerModule(new JavaTimeModule()); JSON_MAPPER.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS); + JSON_MAPPER.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS); } private static final Logger LOG = LoggerFactory.getLogger(Utils.class); diff --git a/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java b/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java index 9b1b651..fa80a23 100644 --- a/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java +++ b/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java @@ -1,18 +1,18 @@ package com.exceptionless.exceptionlessclient; import com.exceptionless.exceptionlessclient.configuration.ConfigurationManager; -import com.exceptionless.exceptionlessclient.models.Event; -import com.exceptionless.exceptionlessclient.models.UserDescription; import com.exceptionless.exceptionlessclient.enums.EventPropertyKey; import com.exceptionless.exceptionlessclient.enums.EventType; -import com.exceptionless.exceptionlessclient.settings.SettingsResponse; -import com.exceptionless.exceptionlessclient.submission.SubmissionResponse; +import com.exceptionless.exceptionlessclient.models.Event; +import com.exceptionless.exceptionlessclient.models.UserDescription; import com.exceptionless.exceptionlessclient.queue.DefaultEventQueue; import com.exceptionless.exceptionlessclient.settings.DefaultSettingsClient; import com.exceptionless.exceptionlessclient.settings.ServerSettings; +import com.exceptionless.exceptionlessclient.settings.SettingsResponse; import com.exceptionless.exceptionlessclient.storage.InMemoryStorage; import com.exceptionless.exceptionlessclient.storage.InMemoryStorageProvider; import com.exceptionless.exceptionlessclient.submission.DefaultSubmissionClient; +import com.exceptionless.exceptionlessclient.submission.SubmissionResponse; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; diff --git a/src/test/java/com/exceptionless/exceptionlessclient/utils/UtilsTest.java b/src/test/java/com/exceptionless/exceptionlessclient/utils/UtilsTest.java index 7a62f6f..bf1fc82 100644 --- a/src/test/java/com/exceptionless/exceptionlessclient/utils/UtilsTest.java +++ b/src/test/java/com/exceptionless/exceptionlessclient/utils/UtilsTest.java @@ -1,5 +1,6 @@ package com.exceptionless.exceptionlessclient.utils; +import com.fasterxml.jackson.core.JsonProcessingException; import org.junit.jupiter.api.Test; import java.net.URI; @@ -80,4 +81,11 @@ public void itCanMatchAValueToAPattern() { assertThat(Utils.match("abc", "def")).isFalse(); assertThat(Utils.match("ABC", "abc")).isTrue(); } + + @Test + public void itCanSerializeEmptyBeans() throws JsonProcessingException { + class EmptyBean {} + + assertThat(Utils.JSON_MAPPER.writeValueAsString(new EmptyBean())).isEqualTo("{}"); + } }