Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-9230

CXFRS NPE when response code not in Response.Status

    XMLWordPrintableJSON

Details

    • Unknown

    Description

      When used as a producer, the CXFRS component's org.apache.camel.component.cxf.jaxrs.CxfRsProducer#populateCxfRsProducerException method converts the received HTTP response status code to text:

      String statusText = Response.Status.fromStatusCode(responseCode).toString();

      If the JAX-RS-supplied fromStatusCode method does not recognize the status code provided, it returns null, causing the CxfRsProducer to throw an NPE.

      Note that Response.Status does not encompass all response codes. I ran afoul of this when a REST service returned a 422 for a validation error.

      I will attach a unit test that illustrates this problem, as a patch to the current unit tests for the class.

      Attachments

        1. CAMEL-9230.patch
          2 kB
          Ron Ten-Hove
        2. CAMEL-9230-reproduction.patch
          3 kB
          Ron Ten-Hove

        Activity

          People

            davsclaus Claus Ibsen
            rtenhove Ron Ten-Hove
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: