From 489a1a6b6281deb1160840268e0fae0d0db0f2fc Mon Sep 17 00:00:00 2001 From: mp-loki Date: Sat, 16 Jun 2018 23:23:13 -0400 Subject: [PATCH] Fix for UnsupportedOperationException: JsonNull in case if device type arrives as null --- .../server/transport/mqtt/session/GatewaySessionCtx.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/session/GatewaySessionCtx.java b/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/session/GatewaySessionCtx.java index cfba944952..69ed17f3b0 100644 --- a/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/session/GatewaySessionCtx.java +++ b/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/session/GatewaySessionCtx.java @@ -17,6 +17,7 @@ package org.thingsboard.server.transport.mqtt.session; import com.google.gson.JsonArray; import com.google.gson.JsonElement; +import com.google.gson.JsonNull; import com.google.gson.JsonObject; import com.google.gson.JsonSyntaxException; import io.netty.channel.ChannelHandlerContext; @@ -240,7 +241,7 @@ public class GatewaySessionCtx { private String getDeviceType(JsonElement json) throws AdaptorException { JsonElement type = json.getAsJsonObject().get("type"); - return type == null ? DEFAULT_DEVICE_TYPE : type.getAsString(); + return type == null || type instanceof JsonNull ? DEFAULT_DEVICE_TYPE : type.getAsString(); } private JsonElement getJson(MqttPublishMessage mqttMsg) throws AdaptorException {