[
https://issues.apache.org/jira/browse/CXF-7227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16353896#comment-16353896
]
Sergey Beryozkin commented on CXF-7227:
---------------------------------------
Hi, can you please type how do you do these 2 consecutive calls with WebClient,
1st to "https://host1/book/1/info" and second to "https://host1/book/2/info" ?
Thanks
> AbstractClient set wrong base uri when recieves http 301 redirect status
> ------------------------------------------------------------------------
>
> Key: CXF-7227
> URL: https://issues.apache.org/jira/browse/CXF-7227
> Project: CXF
> Issue Type: Bug
> Components: JAX-RS
> Affects Versions: 3.0.11
> Reporter: xseiko
> Priority: Major
>
> HTTPConduit processes all redirect statuses in redirectRetransmit function
> like:
> String newURL = extractLocation(Headers.getSetProtocolHeaders(m));
> outMessage.put("transport.retransmit.url", newURL);
> retransmit(newURL);
> And then AbstractClient class use transport.retransmit.url in
> completeExchange function to set new base uri:
> s = (String)exchange.getOutMessage().get("transport.retransmit.url");
> if (s != null && !state.getBaseURI().toString().equals(s)) {
> calculateNewRequestURI(URI.create(s), getCurrentURI(), proxy);
> return;
> }
> So when you send first request https://host1/book/1/info that return 301
> Location: https://host2/book/1/info this request is redirected to
> https://host2/book/1/info but AbstractClient set base uri
> https://host2/book/1/info.
> And when you send second request https://host1/book/2/info it is redirected
> to https://host2/book/1/info/book/2/info.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)