Настройте bean-компонент Spring, настроив параметры конфигурации эластичной версии 5.5.1 и создав bean-компонент клиента транспорта.

Я пытаюсь использовать ElasticSearch Java API 5.5.1, и при попытке создать bean-компонент для PreBuiltTransportClient (TransportClient в ES 2.3) я столкнулся с проблемой ниже.

Ошибка создания bean-компонента с именем preBuildTransportClient, определенным в ресурсе ServletContext [/WEB-INF/applicationContext.xml]: неудовлетворенная зависимость, выраженная через параметр конструктора 0: не удалось преобразовать значение аргумента типа [org.elasticsearch.common.settings.Settings$Builder ] в требуемый тип [org.elasticsearch.common.settings.Settings]: не удалось преобразовать значение типа [org.elasticsearch.common.settings.Settings$Builder] в требуемый тип [org.elasticsearch.common.settings.Settings]; вложенным исключением является java.lang.IllegalStateException: невозможно преобразовать значение типа [org.elasticsearch.common.settings.Settings$Builder] в требуемый тип [org.elasticsearch.common.settings.Settings]: не найдены подходящие редакторы или стратегия преобразования

 <bean id="settingsBean" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
    <property name="targetObject">
        <bean id="builderObj" class="org.elasticsearch.common.settings.Settings" factory-method="builder" />
    </property>
    <property name="targetMethod" value="put" />
    <property name="arguments">
        <map>

            <entry key="cluster.name">
                <value>mycluster</value>
            </entry>

        </map>
    </property>
</bean>

<bean id="transportClient" class="org.elasticsearch.transport.client.PreBuiltTransportClient">
     <constructor-arg name="settings" ref="esSettingsBuilderStep2" />
     <constructor-arg name="plugins">
        <null />
</constructor-arg>
</bean>

Любое предложение по созданию bean-компонента для PreBuiltTransportClient?


person kumarc    schedule 16.08.2017    source источник


Ответы (1)


Создал класс и использовал его, поскольку у меня работал bean-компонент с правильными аргументами.

person kumarc    schedule 04.09.2017