|
|
|
@ -40,6 +40,8 @@ import org.springframework.util.concurrent.ListenableFuture; |
|
|
|
import org.springframework.util.concurrent.ListenableFutureCallback; |
|
|
|
import org.springframework.web.client.AsyncRestTemplate; |
|
|
|
import org.springframework.web.client.HttpClientErrorException; |
|
|
|
import org.springframework.web.client.HttpServerErrorException; |
|
|
|
import org.springframework.web.client.UnknownHttpStatusCodeException; |
|
|
|
import org.springframework.web.util.UriComponentsBuilder; |
|
|
|
import org.thingsboard.rule.engine.api.TbContext; |
|
|
|
import org.thingsboard.rule.engine.api.TbNodeException; |
|
|
|
@ -266,6 +268,16 @@ public class TbHttpClient { |
|
|
|
metaData.putValue(STATUS, httpClientErrorException.getStatusText()); |
|
|
|
metaData.putValue(STATUS_CODE, httpClientErrorException.getRawStatusCode() + ""); |
|
|
|
metaData.putValue(ERROR_BODY, httpClientErrorException.getResponseBodyAsString()); |
|
|
|
} else if (e instanceof HttpServerErrorException) { |
|
|
|
HttpServerErrorException httpServerErrorException = (HttpServerErrorException) e; |
|
|
|
metaData.putValue(STATUS, httpServerErrorException.getStatusText()); |
|
|
|
metaData.putValue(STATUS_CODE, httpServerErrorException.getRawStatusCode() + ""); |
|
|
|
metaData.putValue(ERROR_BODY, httpServerErrorException.getResponseBodyAsString()); |
|
|
|
} else if (e instanceof UnknownHttpStatusCodeException) { |
|
|
|
UnknownHttpStatusCodeException unknownHttpStatusCodeException = (UnknownHttpStatusCodeException) e; |
|
|
|
metaData.putValue(STATUS, unknownHttpStatusCodeException.getStatusText()); |
|
|
|
metaData.putValue(STATUS_CODE, unknownHttpStatusCodeException.getRawStatusCode() + ""); |
|
|
|
metaData.putValue(ERROR_BODY, unknownHttpStatusCodeException.getResponseBodyAsString()); |
|
|
|
} |
|
|
|
return ctx.transformMsg(origMsg, origMsg.getType(), origMsg.getOriginator(), metaData, origMsg.getData()); |
|
|
|
} |
|
|
|
|