Uploaded image for project: 'HttpComponents HttpClient'
  1. HttpComponents HttpClient
  2. HTTPCLIENT-2267

Connect called before Interceptors are invoked

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Not A Bug
    • 5.2.1
    • None
    • HttpClient (async)
    • None

    Description

      We tried to migrated to 5.2.1 from 5.1.4.  Right away, our unit tests showed us that our HttpRequestInterceptor that was registered "addRequestInterceptorFirst" is not called before a connection is attempted to be established.  Expected behaviour is that our interceptor validation would catch malformed urls, etc  and kick out a known error to us.  Now, NoRouteToHostException is being thrown before our interceptor logic is hit.  The 'bad url' we were using in our test is:

      https://google.com:555

       

      To recreate, standup new HttpAsyncClient, register an interceptor in first position and force it to use HTTP 1.1, and then generate a GET request to https://google.com:555

       

      java.net.NoRouteToHostException: No route to host
          at java.base/sun.nio.ch.Net.connect0(Native Method)
          at java.base/sun.nio.ch.Net.connect(Net.java:579)
          at java.base/sun.nio.ch.Net.connect(Net.java:586)
          at java.base/sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:853)
          at org.apache.hc.core5.reactor.SingleCoreIOReactor.lambda$processConnectionRequest$0(SingleCoreIOReactor.java:336)
          at java.base/java.security.AccessController.doPrivileged(AccessController.java:569)
          at org.apache.hc.core5.reactor.SingleCoreIOReactor.processConnectionRequest(SingleCoreIOReactor.java:335)
          at org.apache.hc.core5.reactor.SingleCoreIOReactor.processPendingConnectionRequests(SingleCoreIOReactor.java:307)
          at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:138)
          at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:86)
          at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
          at java.base/java.lang.Thread.run(Thread.java:833) 

       

       

       

       

      Attachments

        Activity

          People

            Unassigned Unassigned
            patrickjamesbarry Patrick Barry
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: