On Tue, May 21, 2013 at 02:58:45PM +0530, srihari na wrote:
> Hi Folks,
>
> We are trying to do HTTPGet on a target server enabled with Digest
> authentication. It works perfectly fine, however when proxy with basic
> authentication is introduced target authentication is failing. We are using
> IBM JDK, HTTP Client 4.2.5. Has anybody faced similar issues and knows a
> fix to it?
>
Please post a complete wire log of the session. See HttpClient logging guide
for instructions on wire / context logging.
Oleg
> Code:
> HttpHost proxy = new HttpHost(proxyHost, 808);
> HttpHost target = new HttpHost(targetHost, 80);
> HttpGet req = new HttpGet("/default.asp");
> Credentials targetCredentials = new UsernamePasswordCredentials(targetUser,
> targetpassword);
> Credentials proxyCredentials = new UsernamePasswordCredentials(proxyUser,
> proxyPassword);
> DefaultHttpClient httpclient = null;
> try {
> final PoolingClientConnectionManager connectionManager = new
> PoolingClientConnectionManager();
> httpclient = new DefaultHttpClient(connectionManager);
> HttpContext localContext = new BasicHttpContext();
> req.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY,
> proxy);
> System.out.println("executing request to " + target + " via " +
> proxy);
> httpclient.getCredentialsProvider().setCredentials(new
> AuthScope(proxy), proxyCredentials);
> httpclient.getCredentialsProvider().setCredentials(new
> AuthScope(target), targetCredentials);
> HttpResponse rsp = httpclient.execute(target, req,localContext);
> AuthState proxyAuthState = (AuthState)
> localContext.getAttribute(ClientContext.PROXY_AUTH_STATE);
> System.out.println("Proxy auth state: " +
> proxyAuthState.getState());
> System.out.println("Proxy auth scheme: " +
> proxyAuthState.getAuthScheme());
> System.out.println("Proxy auth credentials: " +
> proxyAuthState.getCredentials());
> AuthState targetAuthState = (AuthState)
> localContext.getAttribute(ClientContext.TARGET_AUTH_STATE);
> System.out.println("Target auth state: " +
> targetAuthState.getState());
> System.out.println("Target auth scheme: " +
> targetAuthState.getAuthScheme());
> System.out.println("Target auth credentials: " +
> targetAuthState.getCredentials());
>
> HttpEntity entity = rsp.getEntity();
>
> if (entity != null) {
> System.out.println(EntityUtils.toString(entity));
> }
>
> }catch (Exception e) {
> } finally {
> httpclient.getConnectionManager().shutdown();
> }
>
> }
>
> --
> Regards,
> Srihari NA
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]