Uploaded image for project: 'RESTEasy'
  1. RESTEasy
  2. RESTEASY-2558

Rest Client does not propagate errors correctly in Async mode (Uni, RxJava)

XMLWordPrintable

    • Hide

      To Reproduce

      Open and run the error.zip
      Call http://localhost:8080/country/sync
      The 404 error is propagated to the result.
      Now call http://localhost:8080/country/async
      Note that the error is a generic 500. The logs mention "Handled Internally". There is no way to figure our what went wrong in the async mode.

      • Expected Outcome *
        The async REST call should properly propagate the 404 error, just like the synchronous call does.
      Show
      To Reproduce Open and run the error.zip Call http://localhost:8080/country/sync The 404 error is propagated to the result. Now call http://localhost:8080/country/async Note that the error is a generic 500. The logs mention "Handled Internally". There is no way to figure our what went wrong in the async mode. Expected Outcome * The async REST call should properly propagate the 404 error, just like the synchronous call does.

      Taken from https://github.com/quarkusio/quarkus/issues/8543

      Describe the bug
      It seems that when using the asynchronous REST Client operators (either CompletionStage, rxJava 2.x operators, or the Mutiny operators), when the REST client encounters an error like 404, it is not able to call any exception mappers correctly, thus making it impossible to handle any HTTP errors from the rest client.

      This was reported before, and either the fix applied was not working correctly, or there is a regression.

      Environment (please complete the following information):
      Quarkus 1.3.2.Final, OS X 10.15, Java 11 OpenJDK.

      Additional context
      (Add any other context about the problem here.)
      Previously reported in #3655 - the issue seems to be closed after a fix was applied, but the issue persists.

              rsearls r searls
              pkruger@redhat.com Phillip Krüger
              Votes:
              1 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated:
                Resolved: