Existe um meio de definir o host e a porta do Spring HATEOAS `ControllerLinkBuilder`?

A primavera HATEOAS fornece as práticasControllerLinkBuilder para criar links para métodos do controlador, que serão adicionados como hrefs no JSON / XML retornado a um cliente. Por exemplo:

resource.add(linkTo(methodOn(FooController.class)
    .findFoo(entity.getClient().getId()))
    .withRel("show"));

... pode gerar JSON um pouco como:

{
  "name":"foo", 
  "links":[
    {"rel":"show","href":"http://111.11.11.111:28080/foos/1"}
  ]
}

Contudo...

Costumo acessar meus serviços através de um proxy reverso. O que eu acho que a maioria das pessoas provavelmente faria. Isso me permite ter vários serviços em execução em portas diferentes, mas permite acessá-los através do mesmo URL base. Infelizmente, acessar por meio de um proxy significa que o URL que está sendo gerado pelo Spring HATEOAS não é um URL válido para acessar o recurso.

Agora eu poderia apenas codificar os links, mas isso é bastante frágil. Tendo oControllerLinkBuilder gerar URLs com base no meu controlador@RequestMapping a configuração é valiosa para mim, pois evita o risco de meus links ficarem fora de sincronia com a realidade.

Então, eu queria saber se há uma propriedade em algum lugar que eu poderia usar para forçar os valores de host e porta. Estou usando o Spring Boot, de modo ideal uma propriedade que eu poderia adicionar aoapplication.properties arquivo em cada ambiente.

Nota:

Como esse problema parece ter sido causado por um bug no Spring, eu provavelmente deveria apontar que estou usando o Spring Boot 1.0.2.RELEASE.

questionAnswers(2)

yourAnswerToTheQuestion