Когда приложение с Apache Camel запускается, оно регистрирует маршруты в контексте Camel, и как только контекст запускается, компоненты, присутствующие в from () и to (), не могут быть изменены, например:
String param = "a = xxxx & y = bbb";
...
to ("http4: //api.xxx.yy?" + stop)
...
Он будет оцениваться только при запуске, поэтому даже если значение строки в переменной param изменится, маршрут всегда будет использовать a=xxxx&y=bbb
по умолчанию, поскольку он уже был инициализирован в контексте Camel ( вы можете видеть, как Camel записывает маршруты в журналы во время запуска приложения).
Опции могут в go меняться не только в конструкции, в зависимости от конструкции рассматриваемого компонента, но также могут быть доступны для конфигурирование через стартеры с использованием application.yml
или application.properties
или через java, как в примере ниже:
application.properties
camel.component.http.http-configuration=br.com.pack.impl.MyHttpConfiguration
In java
HttpConfiguration config = new HttpConfiguration();
config.setProxyAuthMethod("Digest");
config.setProxyAuthUsername("myUser");
config.setProxyAuthPassword("myPassword");
HttpComponent http = context.getComponent("http", HttpComponent.class);
http.setHttpConfiguration(config);
from("direct:start")
.to("http4://www.google.com/search");
Я надеюсь, что это помогло прояснить немного больше