Конфигурация весеннего облака - как читать значение в виде карты из внешнего файла yaml

С сервера конфигурации я хочу внедрить свойство в свою службу в качестве карты. Я могу сделать это с помощью аннотации @ConfigurationProperties; однако, используя @Value (вместе с @RefreshScope), он читает с сервера конфигурации; однако выдает исключение: невозможно преобразовать значение типа [java.lang.String] в требуемый тип [java.util.Map]: не найдены подходящие редакторы или стратегия преобразования


application.yml:(in config server)
user:
  test:
    key1:
      val1,val2
    key2:
      val1,val2

@Service
//@ConfigurationProperties(prefix="user")
@RefreshScope
public class Example {

    @Value("${user}")
    Map<String, List<String>> test;

}

person Swetha V    schedule 27.04.2016    source источник
comment
Вам не нужны @RefreshScope или @Service на @ConfigurationProperties. @ConfigurationProperties по умолчанию находится в области обновления.   -  person spencergibb    schedule 27.04.2016
comment
Спасибо за ответ. а также проблема, с которой я столкнулся, когда свойство не загружалось как карта с сервера конфигурации, устраняется путем удаления аннотации @value и предоставления переменной get/set for test. @ConfigurationProperties(prefix="user") public class Example { Map<String, List<String>> test; public Map<String, List<String>> getTest() { return test; } public void setTest(Map<String, List<String>> tet) { this.test = test; } }   -  person Swetha V    schedule 27.04.2016
comment
Пожалуйста, проверьте мой комментарий о том, как читать файл YAML в Spring и включить его в тест JUnit и TestNG здесь: stackoverflow.com/a/37270778/ 3634283   -  person ayurchuk    schedule 17.05.2016