Динамическая загрузка свойства среды для тестирования потока в весенней интеграции - PullRequest
0 голосов
/ 12 сентября 2018

Я пытаюсь проверить поток созданного мной весеннего интеграционного XML. Я использую класс Custom Transformer, чтобы написать свое собственное преобразование, в котором я устанавливаю профиль на основе свойства. Это свойство установлено в dev в файле application.properties. Есть ли способ динамически изменить это значение для целей тестирования? Я попытался передать его в качестве аргументов VM, но значение переменной env в этом классе все еще равно dev . Помогает только в изменении целевого файла свойств.

@PropertySource("classpath:application-${spring.profiles.active}.properties")
public class CustomTransformer {

    @Value("${spring.profiles.active}")
    private String env;

    public Message<?> transform(Message<String> message){
        String payload = message.getPayload().toString();
        Message<?> message2 = MessageBuilder.withPayload(payload).copyHeadersIfAbsent(message.getHeaders()).setHeader("profile", env).build();
        System.out.println("Message 2:\n" + message2.getPayload().toString());
        return message2;
    }
}
...