WCF AfterReceiveRequest obtém cabeçalhos

Acabei de começar a interceptar solicitações para o meu serviço WCF.

Eu estou chamando o serviço web com código java que se parece com isso (versão curta)

connection = (HttpURLConnection)url.openConnection();
connection.setRequestMethod("GET");
connection.setRequestProperty("Username", "Testname");

Estou recebendo a solicitação, mas não consigo encontrar / encontrar os cabeçalhos na solicitação de mensagem. Eu tentei algo assim:

public object AfterReceiveRequest(ref System.ServiceModel.Channels.Message request, System.ServiceModel.IClientChannel channel, System.ServiceModel.InstanceContext instanceContext)
{
    int headerIndex = request.Headers.FindHeader("Username", string.Empty);
    var username = request.Headers["Username"]

    return null;
}

Mas eu sempre acabo com -1 ou exceções. Qual é a maneira certa de fazer isso? Estou fazendo errado no lado do Java também?

questionAnswers(1)

yourAnswerToTheQuestion