Commit 7bcc147d1cfbd437ea666c4264edce8b4f32e78c

Authored by nickAS21
1 parent 3bace775

Lwm2m fix bug if model == null add log to thingsboard

... ... @@ -186,6 +186,9 @@ public class DefaultLwM2mDownlinkMsgHandler extends LwM2MExecutorAwareService im
186 186 }
187 187 sendSimpleRequest(client, downlink, request.getTimeout(), callback);
188 188 }
  189 + else {
  190 + callback.onValidationError(toString(request), "Resource " + request.getVersionedId() + " is not configured in the device profile!");
  191 + }
189 192 }
190 193
191 194 @Override
... ... @@ -271,10 +274,15 @@ public class DefaultLwM2mDownlinkMsgHandler extends LwM2MExecutorAwareService im
271 274 **/
272 275 Collection<LwM2mResource> resources = client.getNewResourceForInstance(request.getVersionedId(), request.getValue(), modelProvider, this.converter);
273 276 ResourceModel resourceModelWrite = client.getResourceModel(request.getVersionedId(), modelProvider);
274   - ContentFormat contentFormat = request.getObjectContentFormat() != null ? request.getObjectContentFormat() : convertResourceModelTypeToContentFormat(client, resourceModelWrite.type);
275   - WriteRequest downlink = new WriteRequest(WriteRequest.Mode.UPDATE, contentFormat, resultIds.getObjectId(),
276   - resultIds.getObjectInstanceId(), resources);
277   - sendSimpleRequest(client, downlink, request.getTimeout(), callback);
  277 + if (resourceModelWrite != null) {
  278 + ContentFormat contentFormat = request.getObjectContentFormat() != null ? request.getObjectContentFormat() : convertResourceModelTypeToContentFormat(client, resourceModelWrite.type);
  279 + WriteRequest downlink = new WriteRequest(WriteRequest.Mode.UPDATE, contentFormat, resultIds.getObjectId(),
  280 + resultIds.getObjectInstanceId(), resources);
  281 + sendSimpleRequest(client, downlink, request.getTimeout(), callback);
  282 + }
  283 + else {
  284 + callback.onValidationError(toString(request), "Resource " + request.getVersionedId() + " is not configured in the device profile!");
  285 + }
278 286 } else if (resultIds.isObjectInstance()) {
279 287 /*
280 288 * params = "{\"id\":0,\"resources\":[{\"id\":14,\"value\":\"+5\"},{\"id\":15,\"value\":\"+9\"}]}"
... ...