Spring-Data-Solr 如何提供认证数据
Posted
技术标签:
【中文标题】Spring-Data-Solr 如何提供认证数据【英文标题】:Spring-Data-Solr How to provide authentication data 【发布时间】:2014-07-02 20:54:12 【问题描述】:我如何为 spring data solr 服务器提供身份验证数据? 这是我的配置
<solr:solr-server id="solrServer" url="http://xxxxxxxx:8983/solr" />
<bean id="solrTemplate" class="org.springframework.data.solr.core.SolrTemplate" scope="singleton">
<constructor-arg ref="solrServer" />
</bean>
<bean id="searchRepository" class="com.bankofamerica.atmtech.repository.SolrJournalRepository">
<property name="solrOperations" ref="solrTemplate" />
</bean>
<bean id="App" class="App">
<property name="repo" ref="searchRepository" />
</bean>
我没有看到任何可以设置的属性。
【问题讨论】:
【参考方案1】:你不能直接设置Credentials
,必须通过工厂。
@Bean
SolrTemplate solrTemplate()
return new SolrTemplate(solrServerFactory());
@Bean
SolrServerFactory solrServerFactory()
Credentials credentials = new UsernamePasswordCredentials("foo", "bar");
return new HttpSolrServerFactory(solrServer(), "collection1", credentials , "BASIC");
@Bean
SolrServer solrServer()
return new HttpSolrServer("http://localhost:8983/solr");
我猜想某种SolrAuthenticationProvider
如果出现在应用程序上下文中,那么在这种情况下是有意义的。
【讨论】:
以上是关于Spring-Data-Solr 如何提供认证数据的主要内容,如果未能解决你的问题,请参考以下文章
使用 SolrTemplate 使用 Spring-data-solr 进行枢轴分面
spring-data-solr 选用高版本Cannot locate BeanDefinitionParser for element [solr-server]