It seems that camel-http4 component (or the httpclient ) loses credentials
when a custom HttpClientConfigurer is used.
Here is my configuration:
from("servlet:///proxy?matchOnUriPrefix=true")
.removeHeader(Exchange.HTTP_URI)
.removeHeader(Exchange.HTTP_PATH)
.removeHeader(Exchange.HTTP_QUERY)
.to("https4://aupdc-osb01d:9002/P2P_Creditors/P2P_CreditorWS?wsdl&httpClientConfigurerRef=SecureHttpClientConfigurer&authUsername="+_authUsername+"&authPassword="+_authPassword+"&x509HostnameVerifier=AllowAllVerifier");
Here is the log output:
[ qtp9368661-18] wire DEBUG <<
"[\r][\n]"
[ qtp9368661-18] DefaultClientConnection DEBUG
Receiving response: HTTP/1.1 401 Unauthorized
[ qtp9368661-18] headers DEBUG <<
HTTP/1.1 401 Unauthorized
[ qtp9368661-18] headers DEBUG <<
Connection: close
[ qtp9368661-18] headers DEBUG <<
Date: Wed, 06 Jul 2011 07:28:04 GMT
[ qtp9368661-18] headers DEBUG <<
Content-Length: 1518
[ qtp9368661-18] headers DEBUG <<
Content-Type: text/html; charset=UTF-8
[ qtp9368661-18] headers DEBUG <<
WWW-Authenticate: Basic realm="weblogic"
[ qtp9368661-18] headers DEBUG <<
X-Powered-By: Servlet/2.5 JSP/2.1
[ qtp9368661-18] DefaultHttpClient DEBUG Target
requested authentication
[ qtp9368661-18] ultTargetAuthenticationHandler DEBUG
Authentication schemes in the order of preference: [negotiate, NTLM, Digest,
Basic]
[ qtp9368661-18] ultTargetAuthenticationHandler DEBUG
Challenge for negotiate authentication scheme not available
[ qtp9368661-18] ultTargetAuthenticationHandler DEBUG
Challenge for NTLM authentication scheme not available
[ qtp9368661-18] ultTargetAuthenticationHandler DEBUG
Challenge for Digest authentication scheme not available
[ qtp9368661-18] ultTargetAuthenticationHandler DEBUG Basic
authentication scheme selected
[ qtp9368661-18] DefaultHttpClient DEBUG
Authorization challenge processed
[ qtp9368661-18] DefaultHttpClient DEBUG
Authentication scope: BASIC 'weblogic'@aupdc-osb01d:9002
[ qtp9368661-18] DefaultHttpClient DEBUG
Credentials not found
Notice credentials not found.
When I do not include the http client configurer, everything works.
HttpClientConfigurer does not do anything. Just an NOP:
@Override
public void configureHttpClient(HttpClient client) {
}
I'm looking thorugh the source code but I can not figure it out...
Any ideas?
--
View this message in context:
http://camel.465427.n5.nabble.com/camel-http4-loses-auth-credentials-when-a-custom-http-client-configurer-is-used-tp4556016p4556016.html
Sent from the Camel - Users mailing list archive at Nabble.com.