[
https://issues.apache.org/jira/browse/SOLR-1959?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12879912#action_12879912
]
Lance Norskog commented on SOLR-1959:
-------------------------------------
Using POST as a workaround means that query strings will not show in an Apache
server log.
> SolrJ GET operation does not send correct encoding
> --------------------------------------------------
>
> Key: SOLR-1959
> URL: https://issues.apache.org/jira/browse/SOLR-1959
> Project: Solr
> Issue Type: Bug
> Components: clients - java
> Affects Versions: 1.4.1, Next
> Reporter: Lance Norskog
>
> The SolrJ query operation fails to set the character encoding when doing a
> GET. It works when doing a POST.
> The problem is that URLs are urlencoded with UTF-8 but the Content-type:
> header is not set. I tested it with "Content-Type:text/plain;charset=utf-8"
> and that worked. The Content-type header encoding defaults to ISO 8859-1.
> The result is that SolrJ queries fail for any search with a character above
> 127. The work around is to use a POST query instead of a GET. I have not
> searched for other places. So, change:
> {code}
> QueryResponse qr = CommonsHttpSolrServer.query(query);
> {code}
> to:
> {code}
> QueryResponse qr = CommonsHttpSolrServer.query(query,
> SolrRequest.METHOD.POST);
> {code}
> One quirk of this behavior is that url-bashing a query string with an ISO
> 8859-1 character (like an umlaut) works in a browser, but fails in a SolrJ
> request.. It also searches correctly from the admin/index.jsp and
> admin/form.jsp pages, because they set the content-type in the FORM
> declaration.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]