From a2ed4f7cb4e57aef18b29b135e9156841a83d742 Mon Sep 17 00:00:00 2001 From: Harihara Vardhan Date: Sun, 26 Apr 2026 02:13:15 +0530 Subject: [PATCH] perf: register JavaTimeModule once at startup instead of on every error Signed-off-by: Harihara Vardhan --- .../EmailNotificationApiExceptionHandler.java | 10 ++++++++-- .../ridgenerator/exception/ApiExceptionalHandler.java | 8 +++++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/kernel/kernel-notification-service/src/main/java/io/mosip/kernel/emailnotification/exception/EmailNotificationApiExceptionHandler.java b/kernel/kernel-notification-service/src/main/java/io/mosip/kernel/emailnotification/exception/EmailNotificationApiExceptionHandler.java index eec6855fb56..801a9dff8ec 100644 --- a/kernel/kernel-notification-service/src/main/java/io/mosip/kernel/emailnotification/exception/EmailNotificationApiExceptionHandler.java +++ b/kernel/kernel-notification-service/src/main/java/io/mosip/kernel/emailnotification/exception/EmailNotificationApiExceptionHandler.java @@ -7,6 +7,8 @@ import jakarta.servlet.http.HttpServletRequest; +import jakarta.annotation.PostConstruct; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; @@ -43,7 +45,12 @@ public class EmailNotificationApiExceptionHandler { */ @Autowired private ObjectMapper objectMapper; - + + @PostConstruct + private void init() { + objectMapper.registerModule(new JavaTimeModule()); + } + private static final String WHITESPACE = " "; /** @@ -136,7 +143,6 @@ private ResponseWrapper setErrors(HttpServletRequest httpServletRe if (EmptyCheckUtils.isNullEmpty(requestBody)) { return responseWrapper; } - objectMapper.registerModule(new JavaTimeModule()); JsonNode reqNode = objectMapper.readTree(requestBody); responseWrapper.setId(reqNode.path("id").asText()); responseWrapper.setVersion(reqNode.path("version").asText()); diff --git a/kernel/kernel-ridgenerator-service/src/main/java/io/mosip/kernel/ridgenerator/exception/ApiExceptionalHandler.java b/kernel/kernel-ridgenerator-service/src/main/java/io/mosip/kernel/ridgenerator/exception/ApiExceptionalHandler.java index 75acdff130a..c91961eb3f3 100644 --- a/kernel/kernel-ridgenerator-service/src/main/java/io/mosip/kernel/ridgenerator/exception/ApiExceptionalHandler.java +++ b/kernel/kernel-ridgenerator-service/src/main/java/io/mosip/kernel/ridgenerator/exception/ApiExceptionalHandler.java @@ -4,6 +4,8 @@ import jakarta.servlet.http.HttpServletRequest; +import jakarta.annotation.PostConstruct; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; @@ -37,6 +39,11 @@ public class ApiExceptionalHandler { @Autowired private ObjectMapper objectMapper; + @PostConstruct + private void init() { + objectMapper.registerModule(new JavaTimeModule()); + } + public static final String WHITESPACE = " "; /** @@ -121,7 +128,6 @@ private ResponseWrapper setErrors(HttpServletRequest httpServletRe if (EmptyCheckUtils.isNullEmpty(requestBody)) { return responseWrapper; } - objectMapper.registerModule(new JavaTimeModule()); JsonNode reqNode = objectMapper.readTree(requestBody); responseWrapper.setId(reqNode.path("id").asText()); responseWrapper.setVersion(reqNode.path("version").asText());