Browse Source

[DOCS] Low Level REST Client should emphasize ContentType (#22940)

This adds a callout to note that the Low Level REST Client example sets the `ContentType` explicitly and that users should do the same.
Chris Earle 8 years ago
parent
commit
dabc51f988
1 changed files with 8 additions and 2 deletions
  1. 8 2
      docs/java-rest/usage.asciidoc

+ 8 - 2
docs/java-rest/usage.asciidoc

@@ -233,15 +233,19 @@ HttpEntity entity = new NStringEntity(
         "    \"post_date\" : \"2009-11-15T14:12:12\",\n" +
         "    \"message\" : \"trying out Elasticsearch\"\n" +
         "}", ContentType.APPLICATION_JSON);
+
 Response indexResponse = restClient.performRequest(
         "PUT",
         "/twitter/tweet/1",
         Collections.<String, String>emptyMap(),
         entity);
-
-
 --------------------------------------------------
 
+IMPORTANT: The `ContentType` that you specify for the `HttpEntity` is important
+because it will be used to set the `Content-Type` header so that Elasticsearch
+can properly parse the content. Future releases of Elasticsearch will require this
+to be set properly.
+
 Note that the low-level client doesn't expose any helper for json marshalling
 and un-marshalling. Users are free to use the library that they prefer for that
 purpose.
@@ -262,6 +266,7 @@ The following is a basic example of how async requests can be sent:
 --------------------------------------------------
 int numRequests = 10;
 final CountDownLatch latch = new CountDownLatch(numRequests);
+
 for (int i = 0; i < numRequests; i++) {
     restClient.performRequestAsync(
         "PUT",
@@ -283,6 +288,7 @@ for (int i = 0; i < numRequests; i++) {
         }
     );
 }
+
 //wait for all requests to be completed
 latch.await();