Description
Exception:
java.lang.ClassCastException: java.net.URI cannot be cast to java.lang.String
Test:
Response response = getWebClient()
.path("/blob")
.type(MediaType.MULTIPART_FORM_DATA)
.post(multipartBody);
serverside resource:
URI blobId = UriBuilder.fromResource(getClass()).build(gridFSDBFile.getId());
return Response.created(blobId).build();
because inside WebClient handleResponse -> AbstractClient the values are assumed to be string arrays, but is an URI object:
boolean splitHeaders = MessageUtils.isTrue(outMessage.getContextualProperty(HEADER_SPLIT_PROPERTY)); for (Map.Entry<String, List<String>> entry : protocolHeaders.entrySet()) { if (null == entry.getKey()) { continue; } if (entry.getValue().size() > 0) { if (HttpUtils.isDateRelatedHeader(entry.getKey())) { currentResponseBuilder.header(entry.getKey(), entry.getValue().get(0)); continue; } for (String val : entry.getValue()) { if (splitHeaders) { String[] values; if (val == null || val.length() == 0) {