【问题标题】:Configure Spring bean by setting up the elastic 5.5.1 configuration settings and create a transport client bean通过设置弹性 5.5.1 配置设置来配置 Spring bean 并创建传输客户端 bean
【发布时间】:2017-09-04 16:48:59
【问题描述】:

我正在尝试使用 ElasticSearch Java API 5.5.1,并在尝试为 PreBuiltTransportClient(ES 2.3 中的 TransportClient)创建 bean 时遇到以下问题。

在 ServletContext 资源 [/WEB-INF/applicationContext.xml] 中创建名称为“preBuildTransportClient”的 bean 时出错:通过构造函数参数 0 表示的依赖关系不满足:无法转换类型 [org.elasticsearch.common.settings.xml 的参数值。 Settings$Builder] 到所需类型 [org.elasticsearch.common.settings.Settings]:无法将类型 [org.elasticsearch.common.settings.Settings$Builder] 的值转换为所需类型 [org.elasticsearch.common.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>

对于为 PreBuiltTransportClient 创建 bean 有什么建议吗?

【问题讨论】:

    标签: spring elasticsearch elasticsearch-5 elasticsearch-java-api


    【解决方案1】:

    创建了一个类并将其用作具有适当参数的 bean。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-22
      • 2016-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-02
      • 1970-01-01
      • 2022-08-20
      相关资源
      最近更新 更多