Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-6360

Unnecessary Content-Charset header in HttpSolrServer

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 3.6, 4.9
    • Fix Version/s: 4.10, 6.0
    • Component/s: clients - java
    • Labels:
      None

      Description

      The httpclient code in HttpSolrServer currently sets a "Content-Charset" header when making a POST request:

      post.setHeader("Content-Charset", "UTF-8");

      As far as I know this is not a real header and is not necessary. It seems this was a mistake in the original implementation of this class, when converting from httpclient v3 to httpclient v4. CommonsHttpSolrServer did this, which is what the line of code above seems to have been based on:

      post.getParams().setContentCharset("UTF-8");

      The actual way to set the charset in httpclient v4 is already being done correctly, with these lines:

      parts.add(new FormBodyPart(p, new StringBody(v, StandardCharsets.UTF_8)));
      post.setEntity(new UrlEncodedFormEntity(postParams, StandardCharsets.UTF_8));

      So basically, the Content-Charset line can just be removed.

      (I think the explicit setting of the Content-Type header also might be unnecessary, but I haven't taken the time to investigate that.)

        Attachments

        Issue Links

          Activity

            People

            • Assignee:
              uschindler Uwe Schindler
              Reporter:
              michaelryan Michael Ryan

              Dates

              • Created:
                Updated:
                Resolved:

                Issue deployment