Hello, We have been undertaking an upgrade from Camel 2.9.1 to Camel 2.12.2, and in most cases, the upgrade has been very smooth.
Unfortunately, we have spotted a change of behaviour between 2.9.1 and 2.12.2, with respect to the HTTP4 component. Following a upgrade, we are unable to download content from one of our data providers. Here is an excerpt of a log for 2.9.1 (URLs masked): 2014-02-03 17:17:17,018 [//downloadSmart] DEBUG HttpProducer - - - Executing http GET method: http://host/content 2014-02-03 17:17:17,069 [//downloadSmart] DEBUG ThreadSafeClientConnManager - - - Get connection: HttpRoute[{}->http://host], timeout = 5000 2014-02-03 17:17:17,072 [//downloadSmart] DEBUG ConnPoolByRoute - - - [HttpRoute[{}->http://host]] total kept alive: 0, total issued: 0, total allocated: 0 out of 200 2014-02-03 17:17:17,072 [//downloadSmart] DEBUG ConnPoolByRoute - - - No free connections [HttpRoute[{}->http://host]][null] 2014-02-03 17:17:17,072 [//downloadSmart] DEBUG ConnPoolByRoute - - - Available capacity: 20 out of 20 [HttpRoute[{}->http://host]][null] 2014-02-03 17:17:17,072 [//downloadSmart] DEBUG ConnPoolByRoute - - - Creating new connection [HttpRoute[{}->http://host]] 2014-02-03 17:17:17,088 [//downloadSmart] DEBUG efaultClientConnectionOperator - - - Connecting to host:80 2014-02-03 17:17:17,261 [//downloadSmart] DEBUG RequestAddCookies - - - CookieSpec selected: best-match 2014-02-03 17:17:17,274 [//downloadSmart] DEBUG RequestAuthCache - - - Auth cache not set in the context 2014-02-03 17:17:17,274 [//downloadSmart] DEBUG DefaultHttpClient - - - Attempt 1 to execute request 2014-02-03 17:17:17,274 [//downloadSmart] DEBUG DefaultClientConnection - - - Sending request: GET /content HTTP/1.1 2014-02-03 17:17:17,275 [//downloadSmart] DEBUG wire - - - >> "GET /content HTTP/1.1[\r][\n]" 2014-02-03 17:17:17,277 [//downloadSmart] DEBUG wire - - - >> "breadcrumbId: ID-mac-002-49991-1391447833553-0-6[\r][\n]" 2014-02-03 17:17:17,277 [//downloadSmart] DEBUG wire - - - >> "Host: host[\r][\n]" Here is the equivalent log on Camel 2.12.2 (URLs masked): 2014-02-17 23:26:19,302 [//downloadSmart] DEBUG HttpProducer - - - Executing http GET method: http://host:80/content 2014-02-17 23:26:19,349 [//downloadSmart] DEBUG PoolingClientConnectionManager - - - Connection request: [route: {}->http://host:80][total kept alive: 0; route allocated: 0 of 20; total allocated: 0 of 200] 2014-02-17 23:26:19,366 [//downloadSmart] DEBUG PoolingClientConnectionManager - - - Connection leased: [id: 0][route: {}->http://host:80][total kept alive: 0; route allocated: 1 of 20; total allocated: 1 of 200] 2014-02-17 23:26:19,369 [//downloadSmart] DEBUG efaultClientConnectionOperator - - - Connecting to host:80 2014-02-17 23:26:19,550 [//downloadSmart] DEBUG RequestAddCookies - - - CookieSpec selected: best-match 2014-02-17 23:26:19,565 [//downloadSmart] DEBUG RequestAuthCache - - - Auth cache not set in the context 2014-02-17 23:26:19,565 [//downloadSmart] DEBUG RequestTargetAuthentication - - - Target auth state: UNCHALLENGED 2014-02-17 23:26:19,566 [//downloadSmart] DEBUG RequestProxyAuthentication - - - Proxy auth state: UNCHALLENGED 2014-02-17 23:26:19,566 [//downloadSmart] DEBUG DefaultHttpClient - - - Attempt 1 to execute request 2014-02-17 23:26:19,566 [//downloadSmart] DEBUG DefaultClientConnection - - - Sending request: GET /content HTTP/1.1 2014-02-17 23:26:19,567 [//downloadSmart] DEBUG wire - - - >> "GET /content HTTP/1.1[\r][\n]" 2014-02-17 23:26:19,568 [//downloadSmart] DEBUG wire - - - >> "breadcrumbId: ID-mac-002-54437-1392679322140-0-4[\r][\n]" 2014-02-17 23:26:19,568 [//downloadSmart] DEBUG wire - - - >> "Host: host:80[\r][\n]" The only difference we could spot was the introduction of the HTTP default port number at the "HttpProducer" in Camel 2.12.2. This is then passed into the underlying HttpClient and we see "Host: <host>:80" being applied. Performing a browser-based test, we can 'prove' that its the addition of the ":80" that means our content download fails against this particular download site. Are there any settings that reverts this back to the old behaviour, where the port is not added to the Host header? Any thoughts are appreciated. Best regards, Madhu. -- View this message in context: http://camel.465427.n5.nabble.com/Camel-2-12-HTTP4-Now-seeing-port-number-added-to-Host-header-tp5747601.html Sent from the Camel - Users mailing list archive at Nabble.com.
