From d48a67388792178f36c00c3c61f8d5a85632be9b Mon Sep 17 00:00:00 2001 From: piyumaldk Date: Fri, 7 Jun 2024 11:01:20 +0530 Subject: [PATCH] Fix JsonPrimitive casting exception --- .../apimgt/rest/api/store/v1/utils/ImportUtils.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/components/apimgt/org.wso2.carbon.apimgt.rest.api.store.v1/src/main/java/org/wso2/carbon/apimgt/rest/api/store/v1/utils/ImportUtils.java b/components/apimgt/org.wso2.carbon.apimgt.rest.api.store.v1/src/main/java/org/wso2/carbon/apimgt/rest/api/store/v1/utils/ImportUtils.java index a6bcbd2c4f7e..6418c843f7fb 100644 --- a/components/apimgt/org.wso2.carbon.apimgt.rest.api.store.v1/src/main/java/org/wso2/carbon/apimgt/rest/api/store/v1/utils/ImportUtils.java +++ b/components/apimgt/org.wso2.carbon.apimgt.rest.api.store.v1/src/main/java/org/wso2/carbon/apimgt/rest/api/store/v1/utils/ImportUtils.java @@ -293,10 +293,14 @@ public static void addApplicationKey(String username, Application application, A JsonObject jsonObject = gson.fromJson(additionalProperties, JsonObject.class); Set keysSet = jsonObject.keySet(); for (String key : keysSet) { - if (jsonObject.getAsJsonPrimitive(key).isNumber()) { - jsonObject.addProperty(key, String.valueOf(jsonObject.getAsJsonPrimitive(key).getAsLong())); + if (jsonObject.get(key).isJsonPrimitive()) { + if (jsonObject.getAsJsonPrimitive(key).isNumber()) { + jsonObject.addProperty(key, String.valueOf(jsonObject.getAsJsonPrimitive(key).getAsLong())); + } else { + jsonObject.addProperty(key, jsonObject.getAsJsonPrimitive(key).getAsString()); + } } else { - jsonObject.addProperty(key, jsonObject.getAsJsonPrimitive(key).getAsString()); + jsonObject.addProperty(key, jsonObject.get(key).toString()); } } jsonParamObj.addProperty(APIConstants.JSON_ADDITIONAL_PROPERTIES, jsonObject.toString());