Autenticação básica do HttpClientBuilder

Desde o HttpClient 4.3, uso o HttpClientBuilder. Estou me conectando a um serviço REST que possui autenticação básica. Estou definindo as credenciais da seguinte maneira:

HttpClientBuilder builder = HttpClientBuilder.create();

// Get the client credentials
String username = Config.get(Constants.CONFIG_USERNAME);
String password = Config.get(Constants.CONFIG_PASSWORD);

// If username and password was found, inject the credentials
if (username != null && password != null)
{
    CredentialsProvider provider = new BasicCredentialsProvider();

    // Create the authentication scope
    AuthScope scope = new AuthScope(AuthScope.ANY_HOST, AuthScope.ANY_PORT, AuthScope.ANY_REALM);

    // Create credential pair
    UsernamePasswordCredentials credentials = new UsernamePasswordCredentials(username, password);

    // Inject the credentials
    provider.setCredentials(scope, credentials);

    // Set the default credentials provider
    builder.setDefaultCredentialsProvider(provider);
}

No entanto, isso não funciona (o serviço REST que estou usando está retornando 401). O que está acontecendo de errado?

questionAnswers(1)

yourAnswerToTheQuestion