2014-09-30 19 views
1

Я использую Spring boot embedded tomcat и SOLR для фиктивного примера. В моем классе конфигурации я использовалКонечная точка работоспособности Spring Boot для SOLR

@Bean 
public CloudSolrServer solrServer(){ 
    return new CloudSolrServer(zkEnsemble); 
} 

Ударяя по URL здоровья ниже это сообщение я получаю.

 

{ 
    "status" : { 
    "status" : "DOWN" 
    }, 
    "details" : { 
    "error" : "org.apache.solr.client.solrj.SolrServerException: No collection param specified on request and no default collection has been set." 
    }, 
    "error" : "org.apache.solr.client.solrj.SolrServerException: No collection param specified on request and no default collection has been set." 
} 
 

Не могли бы вы помочь, как я могу удалить это сообщение, чтобы статус мог быть UP.

При исследовании пружинный загрузочный класс индикатор здоровья Solr, выяснилось, что SolrHealthIndicator не использовать сборку

Пожалуйста помогите, если я что-то

+0

Правильно ли инициализирован ли компонент Solr или он вообще не работает? – Vaelyr

+0

похоже, что конфигурация Solr неверна. Вам нужны облачные функции? Рекомендую попробовать с базой HttpSolrServer – Mysterion

ответ

0

Spring ботинка SolrHealthIndicatorping() просто вызывает на вашем SolrServer отсутствует. На данный момент у него нет способа узнать, в какую коллекцию он должен пинговать (или если он должен пинговать несколько коллекций).

Ваш лучший вариант только сейчас - сконфигурировать ваш экземпляр CloudSolrServer с помощью коллекции по умолчанию, вызвав setDefaultCollection(String) в ваш bean-метод solrServer().

Если вы хотите увидеть некоторые улучшения до SolrHealthIndicator, например, чтобы вы могли настроить коллекцию (ы) на пинг в application.properties, пожалуйста, open an issue.

Смежные вопросы