[
https://issues.apache.org/jira/browse/SOLR-5532?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13840356#comment-13840356
]
Shawn Heisey commented on SOLR-5532:
------------------------------------
My server is not upgraded to 4.6 - it's running 4.2.1 ... with that server,
your test code works fine. I am in the process of setting up a test server
running 4.6, but I don't have it yet. Is your server also running 4.6?
If your server is 4.6, this looks like the Solr server code has gotten more
strict on the content type header, but SolrJ hasn't been updated to match, and
the existing unit tests didn't catch the problem.
Would you be able to try the following addition to your test code, right after
you create the HttpSolrServer?
{code}
solrServer.setRequestWriter(new BinaryRequestWriter());
{code}
If that works, it's a potential workaround for you, with the added advantage
that requests sent to Solr will be more compact and therefore more efficient.
Also, just in case I have any trouble reproducing, can you include the entire
Java stacktrace from your Solr server log when the problem occurs?
> HttpSolrServer does not accept content type of "ping" response
> --------------------------------------------------------------
>
> Key: SOLR-5532
> URL: https://issues.apache.org/jira/browse/SOLR-5532
> Project: Solr
> Issue Type: New Feature
> Affects Versions: 4.6
> Environment: Windows 7, Java 1.7.0_45 (64bit), solr-solrj-4.6.0.jar
> Reporter: Jakob Furrer
>
> I just upgraded my Solr instance and with it I also upgraded the solrj
> library in our custom application which sends diverse requests and queries to
> Solr.
> I use the "ping" method to determine whether Solr started correctly under the
> configured address. Since the upgrade the ping response results in an error:
> {code:xml}
> Cause: org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException:
> Expected content type application/xml; charset=UTF-8 but got
> application/xml;charset=UTF-8.
> <?xml version="1.0" encoding="UTF-8"?>
> <response>
> <lst name="responseHeader"><int name="status">0</int><int
> name="QTime">0</int><lst name="params"><str name="df">searchtext</str><str
> name="echoParams">all</str><str name="rows">10</str><str
> name="echoParams">all</str><str name="wt">xml</str><str
> name="version">2.2</str><str name="q">solrpingquery</str><str
> name="distrib">false</str></lst></lst><str name="status">OK</str>
> </response>
> {code}
> The Solr application itself works fine.
> Using an older version of the solrj library than solr-solrj-4.6.0.jar (e.g.
> solr-solrj-4.5.1.jar) in the custom application does not produce this error.
> The Exception is produced in a Code block (_HttpSolrServer.java_, method
> _request(...)_, around. line 140) which has been introduced with version
> 4.6.0.
> Code to reproduce the error:
> {code:xml}
> try {
> HttpSolrServer solrServer = new
> HttpSolrServer("my-solr-application-address");
> solrServer.ping();
> } catch (Exception e) {
> e.printStackTrace();
> }
> }
> {code}
> A global search for "charset=UTF-8" on the source code of solrj indicates
> that other functions besides "ping" might be affected as well, because there
> are several places where "application/xml; charset=UTF-8" is spelled without
> a space after the semicolon.
--
This message was sent by Atlassian JIRA
(v6.1#6144)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]