Я пишу настраиваемый компонент для конкретной технологии, но переменная с аннотацией @UriPath не инициализируется. @UriParam в порядке.Непоследовательность аннотации Camel UriPath
Я проверил исходные коды компонентов компонентов Kafka и Servlet, но не смог понять, что действительно делает разницу между ними и моей.
Camel версия: 2.18.1
Endpont, как:
@UriEndpoint(scheme = "elastic", title = "ElasticSearch", syntax = "elastic:url", label = "elastic")
public class ElasticSearchEndpoint extends DefaultEndpoint {
@UriPath
private String url;
@UriParam
private String searchType;
public ElasticSearchEndpoint(String endpointUri, ElasticSearchComponent component) {
super(endpointUri, component);
}
public Producer createProducer() throws Exception {
return new ElasticSearchProducer(this);
}
public Consumer createConsumer(Processor processor) throws Exception {
return null;
}
public boolean isSingleton() {
return false;
}
public String getUrl() {
return url;
}
public String getSearchType() {
return searchType;
}
public void setUrl(String url) {
this.url = url;
}
public void setSearchType(String searchType) {
this.searchType = searchType;
}
}
И компонент создан весной:
<bean id="elastic" class="elasticsearch.ElasticSearchComponent" />
Любые идеи?