Camel
  1. Camel
  2. CAMEL-1111

HttpProducer - Side effect of using URI-based endpoint config disables POST method use

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 1.5.0
    • Fix Version/s: 1.6.0, 2.0-M1
    • Component/s: camel-http
    • Labels:
      None
    • Environment:

      Any

      Description

      Hello all,

      I'm using Camel HTTP component to send data across to HTTP web services. Of course we need to POST this data over, and it's all been peachy until I started on a storycard to implement error handling and retry on timeouts.

      Following the docco here (http://activemq.apache.org/camel/http.html), I made the same change to my endpoint to include ?httpClient.SoTimeout=5000, and that's when the problems started.

      After stepping through the code, I have now found that Camel thinks "httpClient.soTimeout" is actually a query string parameter that I want to pass across to the remote service, when it is not - it's just a configuration option for the HTTPClient. Perhaps Camel needs a QueryStringFilter (or something like it) so that it can distinguish configuration options as opposed to real GET method parameters, or maybe for now ignore any parameters beginning with httpClient.

      Filing as a bug for now because at the very least, the documentation should be updated to highlight the limitation of only allowing GET methods when URI-based configuration is employed. I haven't identified a workaround yet (using Spring DSL) but I'm sure it won't be too difficult.

      Thanks!
      Jason

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Claus Ibsen
              Reporter:
              Jason Royals
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development