Hopefully this would help.
public HttpClient getBasicAuthDefaultHttpClient() { CredentialsProvider provider = new BasicCredentialsProvider(); UsernamePasswordCredentials creds = new UsernamePasswordCredentials(user, password); provider.setCredentials(AuthScope.ANY, creds); //Fix to avoid HTTP 504 ERROR (GATEWAY TIME OUT ERROR) RequestConfig.Builder requestBuilder = RequestConfig.custom(); requestBuilder.setConnectTimeout(30 * 1000); requestBuilder.setConnectionRequestTimeout(30 * 1000); HttpClientBuilder builder = HttpClientBuilder.create(); builder.setDefaultRequestConfig(requestBuilder.build()); builder.setDefaultCredentialsProvider(provider).build(); return builder.build(); }