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 {