gpt4 book ai didi

java - Solr - 使用 Httpclient 实例化 HttpSolrServer

转载 作者:行者123 更新时间:2023-11-30 07:22:21 24 4
gpt4 key购买 nike

我需要连接到代理(?)后面的 solr 服务器。在我尝试之后(没什么特别的):

SolrServer server = new HttpSolrServer("https://urltosolr/solr");
try {
SolrPingResponse pingResponse = server.ping();
} catch (SolrServerException e) {
....
}

堆栈跟踪:

 org.apache.solr.client.solrj.SolrServerException: IOException occured when talking to server at: https://urltosolr/solr
...
Caused by: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated

之后,我尝试了 HttpSolrServer 的其他构造函数,但我不知道如何将用户名和密码正确设置到 HttpClient 中。谁能帮忙?

最佳答案

我没有看到您在代码中尝试通过代理连接的位置,您在创建 HttpSolrServer 时只提供了 solr url。您可以在 creating 时提供自己的 HttpClient 实例你的 HttpSolrServer 实例。您的 HttpClient 实例可以包含有关代理的信息。所需的代码应如下所示,您可以在 http-components examples 中找到它:

DefaultHttpClient httpclient = new DefaultHttpClient();
HttpHost proxy = new HttpHost(proxyHost, proxyPort, "http");
httpclient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
httpclient.getCredentialsProvider().setCredentials(
AuthScope.ANY,
new UsernamePasswordCredentials(username, password));
SolrServer solrServer = new HttpSolrServer(solrUrl, httpclient);

仔细查看您的问题,我认为您不需要使用代理进行连接。你的错误是关于 https 的。看看this其他问题和答案以查看您需要做什么。您需要查看的 httpclient 版本是 4.x。

关于java - Solr - 使用 Httpclient 实例化 HttpSolrServer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12802499/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com