通过设置弹性 5.5.1 配置设置配置 Spring bean 并创建传输客户端 bean

Configure Spring bean by setting up the elastic 5.5.1 configuration settings and create a transport client bean

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

创建名称为 'preBuildTransportClient' 的 bean 在 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>

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

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