[ https://issues.apache.org/jira/browse/CXF-5675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13962389#comment-13962389 ]
Sergey Beryozkin commented on CXF-5675: --------------------------------------- Actually, never mind, may be ResponseBuilder gets confused on the client side > java.lang.ClassCastException: java.net.URI cannot be cast to java.lang.String > when adding Location to Response > -------------------------------------------------------------------------------------------------------------- > > Key: CXF-5675 > URL: https://issues.apache.org/jira/browse/CXF-5675 > Project: CXF > Issue Type: Bug > Components: JAX-RS > Affects Versions: 3.0.0-milestone2 > Reporter: David J. M. Karlsen > > Exception: > java.lang.ClassCastException: java.net.URI cannot be cast to java.lang.String > Test: > {code} > Response response = getWebClient() > .path("/blob") > .type(MediaType.MULTIPART_FORM_DATA) > .post(multipartBody); > {code} > serverside resource: > {code} > URI blobId = > UriBuilder.fromResource(getClass()).build(gridFSDBFile.getId()); > return Response.created(blobId).build(); > {code} > because inside WebClient handleResponse -> AbstractClient the values are > assumed to be string arrays, but is an URI object: > {code} > 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) { > {code} -- This message was sent by Atlassian JIRA (v6.2#6252)