From 1983fbe174734cdbcda94642b243e2c36964dab7 Mon Sep 17 00:00:00 2001 From: Anagh Hegde Date: Mon, 30 Oct 2023 21:08:01 +0530 Subject: [PATCH] fix: replace default object mapper due to the serilisation of Json views (#28484) --- .../services/ce/ApplicationTemplateServiceCEImpl.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/ApplicationTemplateServiceCEImpl.java b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/ApplicationTemplateServiceCEImpl.java index ee8ac1b7bb..107a4c79ae 100644 --- a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/ApplicationTemplateServiceCEImpl.java +++ b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/ApplicationTemplateServiceCEImpl.java @@ -21,6 +21,7 @@ import com.appsmith.server.solutions.ReleaseNotesService; import com.appsmith.util.WebClientUtils; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectWriter; +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.reflect.TypeToken; @@ -343,8 +344,13 @@ public class ApplicationTemplateServiceCEImpl implements ApplicationTemplateServ String authHeader = "Authorization"; String payload; try { - ObjectWriter ow = objectMapper.writer().withDefaultPrettyPrinter(); - payload = ow.writeValueAsString(communityTemplate); + // Please don't use the default ObjectMapper. + // The default mapper is registered with views.public.class and removes few attributes due to this + // The templates flow has different requirement hence not using the same + ObjectMapper ow = new ObjectMapper(); + ow.registerModule(new JavaTimeModule()); + ObjectWriter writer = ow.writer().withDefaultPrettyPrinter(); + payload = writer.writeValueAsString(communityTemplate); } catch (Exception e) { return Mono.error(e); }