Skip to content

JDK 11 HttpClient integration with WebClient [SPR-16469] #21014

Closed

Description

@spring-projects-issues

Rossen Stoyanchev opened SPR-16469 and commented

According to this blog post the HttpClient "handles request and response bodies as reactive-streams", and it is currently in incubation status, but will be made official in JDK 11 when it will switch to java.net from jdk.incubator.

Given the JDK 11 release dates, this is probably a 5.2 target. However, at present, we need to experiment with the proposed API to see if there any issues in adapting it through a ClientHttpConnector, and raise issues if necessary.

JDK HTTP Client - JEP 321 - Update


Affects: 5.0.3

Issue Links:

0 votes, 6 watchers

Activity

  1. spring-projects-issues commented on Mar 29, 2018

    @spring-projects-issues
    CollaboratorAuthor

    Sébastien Deleuze commented

    A draft prototype can be found at https://github.com/sdeleuze/jdk-http-webclient/.
    It is using Reactor EmitterProcessor + Flow to RS passthrough bridge to adapt from Flow.subscriber to Flux.
    Integration tests are all green even if more test is required.
    To be discussed in our next reactive meeting

  2. spring-projects-issues commented on Apr 5, 2018

    @spring-projects-issues
    CollaboratorAuthor

    Sébastien Deleuze commented

    Our integration tests are all green with regular HTTP endpoints but not with streaming ones. I have sent a mail to the net-dev mailing list to describe the issue and get a feedback.

  3. spring-projects-issues commented on Apr 5, 2018

    @spring-projects-issues
    CollaboratorAuthor

    Sébastien Deleuze commented

    Leveraging a PublishingBodySubscriber copy from JDK-8201186, streaming tests pass as well.

    Since this feature provides a Publisher based API and allows to have the lifecycle we were expecting (body available just after status and headers), I have added our +1 for this proposal on the mailing list in order to ask inclusion in JDK 11 out of the box.

  4. modified the milestones: 5.2 M1, 5.x Backlog on Jan 30, 2019
  5. removed their assignment
    on Jan 30, 2019
  6. sdeleuze commented on Jan 31, 2019

    @sdeleuze
    Contributor

    I have upgraded the prototype to JDK 11 and Spring Framework 5.1, but it seems most tests are broken. Most significant change has been that we now leverage BodyPublishers.fromPublisher, so maybe the issue is on that part. I won't spend more time on that for now since this is not a Spring Framework 5.2 topic anymore, but we will have to fix that at some point.

  7. rstoyanchev commented on Nov 8, 2019

    @rstoyanchev
    Contributor

    I'm marking this superseded by #23432 which seems to be close enough to the prototype here.

  8. removed this from the 5.x Backlog milestone on Nov 8, 2019
  9. added a commit that references this issue on Sep 24, 2021
    e379f4b
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    in: webIssues in web modules (web, webmvc, webflux, websocket)status: supersededAn issue that has been superseded by anothertype: enhancementA general enhancement

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions