} else {
callback = message.getExchange().get(ClientCallback.class);
if (callback != null && !isPartialResponse(message)) {
try {
chain.doIntercept(message);
} catch (Throwable error) {
//so that asyn callback handler get chance to
//handle non-runtime exceptions
message.getExchange().setInMessage(message);
Map<String, Object> resCtx = CastUtils