You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ho...@apache.org on 2017/07/24 15:42:09 UTC

[1/3] lucene-solr:master: SOLR-10494: Make default response format JSON (wt=json), and also indent text responses formats (indent=on) by default

Repository: lucene-solr
Updated Branches:
  refs/heads/master a323f55d7 -> 6a59253ec


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/the-terms-component.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/the-terms-component.adoc b/solr/solr-ref-guide/src/the-terms-component.adoc
index c8b51ca..9f10fb6 100644
--- a/solr/solr-ref-guide/src/the-terms-component.adoc
+++ b/solr/solr-ref-guide/src/the-terms-component.adoc
@@ -260,7 +260,7 @@ Result:
 </response>
 ----
 
-You can use the parameter `omitHeader=true` to omit the response header from the query response, like in this example, which also returns the response in JSON format: `\http://localhost:8983/solr/techproducts/terms?terms.fl=name&terms.prefix=at&indent=true&wt=json&omitHeader=true`
+You can use the parameter `omitHeader=true` to omit the response header from the query response, like in this example, which also returns the response in JSON format: `\http://localhost:8983/solr/techproducts/terms?terms.fl=name&terms.prefix=at&omitHeader=true`
 
 Result:
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/transforming-result-documents.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/transforming-result-documents.adoc b/solr/solr-ref-guide/src/transforming-result-documents.adoc
index 754060d..b5b1cff 100644
--- a/solr/solr-ref-guide/src/transforming-result-documents.adoc
+++ b/solr/solr-ref-guide/src/transforming-result-documents.adoc
@@ -97,10 +97,10 @@ Augments each document with an inline explanation of its score exactly like the
 
 [source,plain]
 ----
-q=features:cache&wt=json&fl=id,[explain style=nl]
+q=features:cache&fl=id,[explain style=nl]
 ----
 
-Supported values for "```style```" are "```text```", and "```html```", and "nl" which returns the information as structured data:
+Supported values for `style` are `text`, and `html`, and `nl` which returns the information as structured data:
 
 [source,json]
 ----

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/using-javascript.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/using-javascript.adoc b/solr/solr-ref-guide/src/using-javascript.adoc
index d2247fb..62c681f 100644
--- a/solr/solr-ref-guide/src/using-javascript.adoc
+++ b/solr/solr-ref-guide/src/using-javascript.adoc
@@ -22,7 +22,7 @@ Using Solr from JavaScript clients is so straightforward that it deserves a spec
 
 HTTP requests can be sent to Solr using the standard `XMLHttpRequest` mechanism.
 
-Out of the box, Solr can send <<response-writers.adoc#json-response-writer,JavaScript Object Notation (JSON) responses>>, which are easily interpreted in JavaScript. Just add `wt=json` to the request URL to have responses sent as JSON.
+By default, Solr sends <<response-writers.adoc#json-response-writer,JavaScript Object Notation (JSON) responses>>, which are easily interpreted in JavaScript. You don't need to add anything to the request URL to have responses sent as JSON.
 
 For more information and an excellent example, read the SolJSON page on the Solr Wiki:
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/using-python.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/using-python.adoc b/solr/solr-ref-guide/src/using-python.adoc
index 84a7b4c..2c51486 100644
--- a/solr/solr-ref-guide/src/using-python.adoc
+++ b/solr/solr-ref-guide/src/using-python.adoc
@@ -58,7 +58,7 @@ JSON is a more robust response format, but you will need to add a Python package
 sudo easy_install simplejson
 ----
 
-Once that is done, making a query is nearly the same as before. However, notice that the wt query parameter is now json, and the response is now digested by `simplejson.load()`.
+Once that is done, making a query is nearly the same as before. However, notice that the wt query parameter is now json (which is also the default if not wt parameter is specified), and the response is now digested by `simplejson.load()`.
 
 [source,python]
 ----

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/SolrStream.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/SolrStream.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/SolrStream.java
index ab029af..17817bd 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/SolrStream.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/SolrStream.java
@@ -255,6 +255,8 @@ public class SolrStream extends TupleStream {
     if (p != null) {
       ModifiableSolrParams modifiableSolrParams = (ModifiableSolrParams) requestParams;
       modifiableSolrParams.remove("qt");
+      //performance optimization - remove extra whitespace by default when streaming
+      modifiableSolrParams.set("indent", modifiableSolrParams.get("indent", "off"));
     }
 
     String wt = requestParams.get(CommonParams.WT, "json");

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/test-framework/src/java/org/apache/solr/SolrTestCaseJ4.java
----------------------------------------------------------------------
diff --git a/solr/test-framework/src/java/org/apache/solr/SolrTestCaseJ4.java b/solr/test-framework/src/java/org/apache/solr/SolrTestCaseJ4.java
index 607d0eb..6e23d45 100644
--- a/solr/test-framework/src/java/org/apache/solr/SolrTestCaseJ4.java
+++ b/solr/test-framework/src/java/org/apache/solr/SolrTestCaseJ4.java
@@ -850,6 +850,13 @@ public abstract class SolrTestCaseJ4 extends LuceneTestCase {
   public static void assertQ(String message, SolrQueryRequest req, String... tests) {
     try {
       String m = (null == message) ? "" : message + " "; // TODO log 'm' !!!
+      //since the default (standard) response format is now JSON
+      //need to explicitly request XML since this class uses XPath
+      ModifiableSolrParams xmlWriterTypeParams = new ModifiableSolrParams(req.getParams());
+      xmlWriterTypeParams.set(CommonParams.WT,"xml");
+      //for tests, let's turn indention off so we don't have to handle extraneous spaces
+      xmlWriterTypeParams.set("indent", xmlWriterTypeParams.get("indent", "off"));
+      req.setParams(xmlWriterTypeParams);
       String response = h.query(req);
 
       if (req.getParams().getBool("facet", false)) {

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/test-framework/src/java/org/apache/solr/util/RestTestBase.java
----------------------------------------------------------------------
diff --git a/solr/test-framework/src/java/org/apache/solr/util/RestTestBase.java b/solr/test-framework/src/java/org/apache/solr/util/RestTestBase.java
index b6209bf..12cad01 100644
--- a/solr/test-framework/src/java/org/apache/solr/util/RestTestBase.java
+++ b/solr/test-framework/src/java/org/apache/solr/util/RestTestBase.java
@@ -498,7 +498,7 @@ abstract public class RestTestBase extends SolrJettyTestBase {
    *
    * The passed-in valueToSet should NOT be URL encoded, as it will be URL encoded by this method.
    *
-   * @param query The query portion of a request URL, e.g. "wt=json&indent=on&fl=id,_version_"
+   * @param query The query portion of a request URL, e.g. "wt=xml&indent=off&fl=id,_version_"
    * @param paramToSet The parameter name to insure the presence of in the returned request 
    * @param valueToSet The parameter value to insure in the returned request
    * @return The query with the given param set to the given value 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/test-framework/src/java/org/apache/solr/util/RestTestHarness.java
----------------------------------------------------------------------
diff --git a/solr/test-framework/src/java/org/apache/solr/util/RestTestHarness.java b/solr/test-framework/src/java/org/apache/solr/util/RestTestHarness.java
index 11e28a6..2769d9b 100644
--- a/solr/test-framework/src/java/org/apache/solr/util/RestTestHarness.java
+++ b/solr/test-framework/src/java/org/apache/solr/util/RestTestHarness.java
@@ -97,7 +97,7 @@ public class RestTestHarness extends BaseTestHarness implements Closeable {
 
   /**
    * Processes a "query" using a URL path (with no context path) + optional query params,
-   * e.g. "/schema/fields?indent=on"
+   * e.g. "/schema/fields?indent=off"
    *
    * @param request the URL path and optional query params
    * @return The response to the query
@@ -181,10 +181,10 @@ public class RestTestHarness extends BaseTestHarness implements Closeable {
   @Override
   public void reload() throws Exception {
     String coreName = (String)evaluateXPath
-        (adminQuery("/admin/cores?action=STATUS"),
+        (adminQuery("/admin/cores?wt=xml&action=STATUS"),
          "//lst[@name='status']/lst[1]/str[@name='name']",
          XPathConstants.STRING);
-    String xml = checkAdminResponseStatus("/admin/cores?action=RELOAD&core=" + coreName, "0");
+    String xml = checkAdminResponseStatus("/admin/cores?wt=xml&action=RELOAD&core=" + coreName, "0");
     if (null != xml) {
       throw new RuntimeException("RELOAD failed:\n" + xml);
     }

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/webapp/web/js/angular/controllers/query.js
----------------------------------------------------------------------
diff --git a/solr/webapp/web/js/angular/controllers/query.js b/solr/webapp/web/js/angular/controllers/query.js
index 3a44cbd..63f0830 100644
--- a/solr/webapp/web/js/angular/controllers/query.js
+++ b/solr/webapp/web/js/angular/controllers/query.js
@@ -20,7 +20,7 @@ solrAdminApp.controller('QueryController',
     $scope.resetMenu("query", Constants.IS_COLLECTION_PAGE);
 
     // @todo read URL parameters into scope
-    $scope.query = {wt: 'json', q:'*:*', indent:'on'};
+    $scope.query = {q:'*:*'};
     $scope.filters = [{fq:""}];
     $scope.dismax = {defType: "dismax"};
     $scope.edismax = {defType: "edismax", stopwords: true, lowercaseOperators: false};
@@ -87,6 +87,9 @@ solrAdminApp.controller('QueryController',
       var url = Query.url(params);
       Query.query(params, function(data) {
         $scope.lang = $scope.query.wt;
+        if ($scope.lang == undefined || $scope.lang == '') {
+          $scope.lang = "json";
+        }
         $scope.response = data;
         // Use relative URL to make it also work through proxies that may have a different host/port/context
         $scope.url = url;

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/webapp/web/partials/query.html
----------------------------------------------------------------------
diff --git a/solr/webapp/web/partials/query.html b/solr/webapp/web/partials/query.html
index d68d236..2a77355 100644
--- a/solr/webapp/web/partials/query.html
+++ b/solr/webapp/web/partials/query.html
@@ -78,6 +78,7 @@ limitations under the License.
           <a rel="help">wt</a>
         </label>
         <select name="wt" ng-model="query.wt" id="wt" title="The writer type (response format).">
+          <option ng-selected="selected" value=''>------</option>
           <option>json</option>
           <option>xml</option>
           <option>python</option>
@@ -86,9 +87,9 @@ limitations under the License.
           <option>csv</option>
         </select>
 
-        <label for="indent" class="checkbox" title="Indent results.">
-          <input type="checkbox" ng-model="query.indent" name="indent" id="indent" title="Indent results." ng-true-value="'on'" ng-false-value="''">
-          indent
+        <label for="indent off" class="checkbox" title="Do not indent results.">
+          <input type="checkbox" ng-model="query.indent" name="indent" id="indent" title="Do not indent results." ng-true-value="'off'" ng-false-value="''">
+          indent off
         </label>
 
         <label for="debugQuery" class="checkbox" title="Show timing and diagnostics.">


[2/3] lucene-solr:master: SOLR-10494: Make default response format JSON (wt=json), and also indent text responses formats (indent=on) by default

Posted by ho...@apache.org.
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/rest/schema/TestBulkSchemaAPI.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/rest/schema/TestBulkSchemaAPI.java b/solr/core/src/test/org/apache/solr/rest/schema/TestBulkSchemaAPI.java
index 9f37967..4dcfc66 100644
--- a/solr/core/src/test/org/apache/solr/rest/schema/TestBulkSchemaAPI.java
+++ b/solr/core/src/test/org/apache/solr/rest/schema/TestBulkSchemaAPI.java
@@ -107,7 +107,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "                 }\n" +
         "    }";
 
-    String response = restTestHarness.post("/schema?wt=json", json(payload));
+    String response = restTestHarness.post("/schema", json(payload));
     Map map = (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     List l = (List) map.get("errors");
     assertNotNull("No errors", l);
@@ -142,7 +142,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "    }\n"+
         "}}";
 
-    String response = restTestHarness.post("/schema?wt=json",
+    String response = restTestHarness.post("/schema",
         json(addFieldTypeAnalyzerWithClass + ',' + charFilters + tokenizer + filters + suffix));
     Map map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     List list = (List)map.get("errors");
@@ -151,7 +151,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
     assertTrue (((String)errorList.get(0)).contains
         ("An analyzer with a class property may not define any char filters!"));
 
-    response = restTestHarness.post("/schema?wt=json",
+    response = restTestHarness.post("/schema",
         json(addFieldTypeAnalyzerWithClass + ',' + tokenizer + filters + suffix));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     list = (List)map.get("errors");
@@ -160,7 +160,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
     assertTrue (((String)errorList.get(0)).contains
         ("An analyzer with a class property may not define a tokenizer!"));
 
-    response = restTestHarness.post("/schema?wt=json",
+    response = restTestHarness.post("/schema",
         json(addFieldTypeAnalyzerWithClass + ',' + filters + suffix));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     list = (List)map.get("errors");
@@ -169,7 +169,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
     assertTrue (((String)errorList.get(0)).contains
         ("An analyzer with a class property may not define any filters!"));
 
-    response = restTestHarness.post("/schema?wt=json", json(addFieldTypeAnalyzerWithClass + suffix));
+    response = restTestHarness.post("/schema", json(addFieldTypeAnalyzerWithClass + suffix));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(response, map.get("errors"));
 
@@ -203,7 +203,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "                 }\n" +
         "    }";
 
-    String response = harness.post("/schema?wt=json", json(payload));
+    String response = harness.post("/schema", json(payload));
 
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(response, map.get("errors"));
@@ -226,7 +226,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "                 }\n" +
         "    }";
 
-    String response = harness.post("/schema?wt=json", json(payload));
+    String response = harness.post("/schema", json(payload));
     Map map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNotNull(response, map.get("errors"));
 
@@ -249,7 +249,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "     }\n" +
         "}";
 
-    String response = harness.post("/schema?wt=json", json(payload));
+    String response = harness.post("/schema", json(payload));
     Map map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNotNull(response, map.get("errors"));
 
@@ -271,7 +271,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "     }\n" +
         "}";
 
-    response = harness.post("/schema?wt=json", json(payload));
+    response = harness.post("/schema", json(payload));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNotNull(response, map.get("errors"));
   }
@@ -302,7 +302,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "    }\n" +
         "}";
 
-    String response = harness.post("/schema?wt=json", json(payload));
+    String response = harness.post("/schema", json(payload));
 
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(response, map.get("errors"));
@@ -319,7 +319,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "                 }\n" +
         "    }";
 
-    response = harness.post("/schema?wt=json", json(payload));
+    response = harness.post("/schema", json(payload));
 
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(response, map.get("errors"));
@@ -499,7 +499,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "                       }\n" +
         "          }\n";
     
-    String response = harness.post("/schema?wt=json", json(payload));
+    String response = harness.post("/schema", json(payload));
 
     Map map = (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(response, map.get("errors"));
@@ -636,7 +636,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "                        {'source':'NewField4',         'dest':['NewField1'], maxChars: 3333     }]\n" +
         "}\n";
 
-    String response = harness.post("/schema?wt=json", json(cmds));
+    String response = harness.post("/schema", json(cmds));
 
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(response, map.get("errors"));
@@ -691,14 +691,14 @@ public class TestBulkSchemaAPI extends RestTestBase {
     assertNull(map.get("NewField3"));
 
     cmds = "{'delete-field-type' : {'name':'NewFieldType'}}";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     Object errors = map.get("errors");
     assertNotNull(errors);
     assertTrue(errors.toString().contains("Can't delete 'NewFieldType' because it's the field type of "));
 
     cmds = "{'delete-field' : {'name':'NewField1'}}";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     errors = map.get("errors");
     assertNotNull(errors);
@@ -706,7 +706,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         ("Can't delete field 'NewField1' because it's referred to by at least one copy field directive"));
 
     cmds = "{'delete-field' : {'name':'NewField2'}}";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     errors = map.get("errors");
     assertNotNull(errors);
@@ -714,7 +714,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         ("Can't delete field 'NewField2' because it's referred to by at least one copy field directive"));
 
     cmds = "{'replace-field' : {'name':'NewField1', 'type':'string'}}";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(map.get("errors"));
     // Make sure the copy field directives with source NewField1 are preserved
@@ -728,7 +728,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
     assertTrue(set.contains("NewDynamicField1A"));
 
     cmds = "{'delete-dynamic-field' : {'name':'NewDynamicField1*'}}";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     errors = map.get("errors");
     assertNotNull(errors);
@@ -736,7 +736,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         ("copyField dest :'NewDynamicField1A' is not an explicit field and doesn't match a dynamicField."));
 
     cmds = "{'replace-field' : {'name':'NewField2', 'type':'string'}}";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     errors = map.get("errors");
     assertNull(errors);
@@ -753,7 +753,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
     assertTrue(set.contains("NewDynamicField2*"));
 
     cmds = "{'replace-dynamic-field' : {'name':'NewDynamicField2*', 'type':'string'}}";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     errors = map.get("errors");
     assertNull(errors);
@@ -763,7 +763,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
     assertEquals("NewField2", ((Map) list.get(0)).get("dest"));
 
     cmds = "{'replace-dynamic-field' : {'name':'NewDynamicField1*', 'type':'string'}}";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     errors = map.get("errors");
     assertNull(errors);
@@ -773,7 +773,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
     assertEquals("NewField1", ((Map) list.get(0)).get("source"));
 
     cmds = "{'replace-field-type': {'name':'NewFieldType', 'class':'solr.BinaryField'}}";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(map.get("errors"));
     // Make sure the copy field directives with sources and destinations of type NewFieldType are preserved
@@ -793,7 +793,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "                        {'source':'NewDynamicField3*', 'dest':'NewField3'                            },\n" +
         "                        {'source':'NewField4',         'dest':['NewField1', 'NewField2', 'NewField3']}]\n" +
         "}\n";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(map.get("errors"));
     list = getSourceCopyFields(harness, "NewField1");
@@ -808,7 +808,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
     assertEquals(0, list.size());
     
     cmds = "{'delete-field': [{'name':'NewField1'},{'name':'NewField2'},{'name':'NewField3'},{'name':'NewField4'}]}";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(map.get("errors"));
 
@@ -816,12 +816,12 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "                             {'name':'NewDynamicField2*'},\n" +
         "                             {'name':'NewDynamicField3*'}]\n" +
         "}\n";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(map.get("errors"));
     
     cmds = "{'delete-field-type':{'name':'NewFieldType'}}";
-    response = harness.post("/schema?wt=json", json(cmds));
+    response = harness.post("/schema", json(cmds));
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(map.get("errors"));
   }
@@ -849,7 +849,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "  }\n" +
         "}\n";
 
-    String response = harness.post("/schema?wt=json&indent=on", json(payload));
+    String response = harness.post("/schema", json(payload));
 
     Map map = (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(response, map.get("errors"));
@@ -876,7 +876,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
         "  }\n"+
         "}\n";
 
-    response = harness.post("/schema?wt=json&indent=on", json(payload));
+    response = harness.post("/schema", json(payload));
 
     map = (Map)ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(response, map.get("errors"));
@@ -900,7 +900,7 @@ public class TestBulkSchemaAPI extends RestTestBase {
   }
 
   public static Map getRespMap(RestTestHarness restHarness) throws Exception {
-    return getAsMap("/schema?wt=json", restHarness);
+    return getAsMap("/schema", restHarness);
   }
 
   public static Map getAsMap(String uri, RestTestHarness restHarness) throws Exception {

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/rest/schema/TestCopyFieldCollectionResource.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/rest/schema/TestCopyFieldCollectionResource.java b/solr/core/src/test/org/apache/solr/rest/schema/TestCopyFieldCollectionResource.java
index 7b39ab3..a444a84 100644
--- a/solr/core/src/test/org/apache/solr/rest/schema/TestCopyFieldCollectionResource.java
+++ b/solr/core/src/test/org/apache/solr/rest/schema/TestCopyFieldCollectionResource.java
@@ -20,7 +20,7 @@ import org.junit.Test;
 
 public class TestCopyFieldCollectionResource extends SolrRestletTestBase {
   @Test
-  public void testGetAllCopyFields() throws Exception {
+  public void testXMLGetAllCopyFields() throws Exception {
     assertQ("/schema/copyfields?indent=on&wt=xml",
         "/response/arr[@name='copyFields']/lst[    str[@name='source'][.='src_sub_no_ast_i']"
             +"                                      and str[@name='dest'][.='title']]",
@@ -79,8 +79,8 @@ public class TestCopyFieldCollectionResource extends SolrRestletTestBase {
   }
 
   @Test
-  public void testJsonGetAllCopyFields() throws Exception {
-    assertJQ("/schema/copyfields?indent=on&wt=json",
+  public void testGetAllCopyFields() throws Exception {
+    assertJQ("/schema/copyfields",
              "/copyFields/[1]=={'source':'src_sub_no_ast_i','dest':'title'}",
              "/copyFields/[7]=={'source':'title','dest':'dest_sub_no_ast_s'}",
 
@@ -102,7 +102,7 @@ public class TestCopyFieldCollectionResource extends SolrRestletTestBase {
 
   @Test
   public void testRestrictSource() throws Exception {
-    assertQ("/schema/copyfields/?indent=on&wt=xml&source.fl=title,*_i,*_src_sub_i,src_sub_no_ast_i",
+    assertQ("/schema/copyfields/?wt=xml&source.fl=title,*_i,*_src_sub_i,src_sub_no_ast_i",
         "count(/response/arr[@name='copyFields']/lst) = 16", // 4 + 4 + 4 + 4
         "count(/response/arr[@name='copyFields']/lst/str[@name='source'][.='title']) = 4",
         "count(/response/arr[@name='copyFields']/lst/str[@name='source'][.='*_i']) = 4",
@@ -112,7 +112,7 @@ public class TestCopyFieldCollectionResource extends SolrRestletTestBase {
 
   @Test
   public void testRestrictDest() throws Exception {
-    assertQ("/schema/copyfields/?indent=on&wt=xml&dest.fl=title,*_s,*_dest_sub_s,dest_sub_no_ast_s",
+    assertQ("/schema/copyfields/?wt=xml&dest.fl=title,*_s,*_dest_sub_s,dest_sub_no_ast_s",
         "count(/response/arr[@name='copyFields']/lst) = 16", // 3 + 4 + 4 + 5
         "count(/response/arr[@name='copyFields']/lst/str[@name='dest'][.='title']) = 3",
         "count(/response/arr[@name='copyFields']/lst/str[@name='dest'][.='*_s']) = 4",
@@ -122,7 +122,7 @@ public class TestCopyFieldCollectionResource extends SolrRestletTestBase {
 
   @Test
   public void testRestrictSourceAndDest() throws Exception {
-    assertQ("/schema/copyfields/?indent=on&wt=xml&source.fl=title,*_i&dest.fl=title,dest_sub_no_ast_s",
+    assertQ("/schema/copyfields/?wt=xml&source.fl=title,*_i&dest.fl=title,dest_sub_no_ast_s",
         "count(/response/arr[@name='copyFields']/lst) = 3",
 
         "/response/arr[@name='copyFields']/lst[    str[@name='source'][.='title']"

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/rest/schema/TestFieldCollectionResource.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/rest/schema/TestFieldCollectionResource.java b/solr/core/src/test/org/apache/solr/rest/schema/TestFieldCollectionResource.java
index 8d2b555..31fa9f5 100644
--- a/solr/core/src/test/org/apache/solr/rest/schema/TestFieldCollectionResource.java
+++ b/solr/core/src/test/org/apache/solr/rest/schema/TestFieldCollectionResource.java
@@ -23,8 +23,8 @@ import org.junit.Test;
 
 public class TestFieldCollectionResource extends SolrRestletTestBase {
   @Test
-  public void testGetAllFields() throws Exception {
-    assertQ("/schema/fields?indent=on&wt=xml",
+  public void testXMLGetAllFields() throws Exception {
+    assertQ("/schema/fields?wt=xml",
             "(/response/arr[@name='fields']/lst/str[@name='name'])[1] = 'HTMLstandardtok'",
             "(/response/arr[@name='fields']/lst/str[@name='name'])[2] = 'HTMLwhitetok'",
             "(/response/arr[@name='fields']/lst/str[@name='name'])[3] = '_version_'");
@@ -32,25 +32,25 @@ public class TestFieldCollectionResource extends SolrRestletTestBase {
 
 
   @Test
-  public void testJsonGetAllFields() throws Exception {
-    assertJQ("/schema/fields?indent=on",
+  public void testGetAllFields() throws Exception {
+    assertJQ("/schema/fields",
              "/fields/[0]/name=='HTMLstandardtok'",
              "/fields/[1]/name=='HTMLwhitetok'",
              "/fields/[2]/name=='_version_'");
   }
 
   @Test
-  public void testGetThreeFieldsDontIncludeDynamic() throws IOException {
+  public void testXMLGetThreeFieldsDontIncludeDynamic() throws IOException {
     //
-    assertQ("/schema/fields?indent=on&wt=xml&fl=id,_version_,price_i",
+    assertQ("/schema/fields?wt=xml&fl=id,_version_,price_i",
         "count(/response/arr[@name='fields']/lst/str[@name='name']) = 2",
         "(/response/arr[@name='fields']/lst/str[@name='name'])[1] = 'id'",
         "(/response/arr[@name='fields']/lst/str[@name='name'])[2] = '_version_'");
   }
 
   @Test
-  public void testGetThreeFieldsIncludeDynamic() throws IOException {
-    assertQ("/schema/fields?indent=on&wt=xml&fl=id,_version_,price_i&includeDynamic=on",
+  public void testXMLGetThreeFieldsIncludeDynamic() throws IOException {
+    assertQ("/schema/fields?wt=xml&fl=id,_version_,price_i&includeDynamic=on",
 
         "count(/response/arr[@name='fields']/lst/str[@name='name']) = 3",
 
@@ -64,16 +64,16 @@ public class TestFieldCollectionResource extends SolrRestletTestBase {
             +"                                  and str[@name='dynamicBase']='*_i']");
   }
   @Test
-  public void testNotFoundFields() throws IOException {
-    assertQ("/schema/fields?indent=on&wt=xml&fl=not_in_there,this_one_either",
+  public void testXMLNotFoundFields() throws IOException {
+    assertQ("/schema/fields?&wt=xml&fl=not_in_there,this_one_either",
         "count(/response/arr[@name='fields']) = 1",
         "count(/response/arr[@name='fields']/lst/str[@name='name']) = 0");
   }
 
 
   @Test
-  public void testJsonGetAllFieldsIncludeDynamic() throws Exception {
-    assertJQ("/schema/fields?indent=on&includeDynamic=true",
+  public void testGetAllFieldsIncludeDynamic() throws Exception {
+    assertJQ("/schema/fields?includeDynamic=true",
              "/fields/[0]/name=='HTMLstandardtok'",
              "/fields/[1]/name=='HTMLwhitetok'",
              "/fields/[2]/name=='_version_'",

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/rest/schema/TestFieldTypeResource.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/rest/schema/TestFieldTypeResource.java b/solr/core/src/test/org/apache/solr/rest/schema/TestFieldTypeResource.java
index a1beb99..4fd94c9 100644
--- a/solr/core/src/test/org/apache/solr/rest/schema/TestFieldTypeResource.java
+++ b/solr/core/src/test/org/apache/solr/rest/schema/TestFieldTypeResource.java
@@ -21,10 +21,10 @@ import org.junit.Test;
 
 public class TestFieldTypeResource extends SolrRestletTestBase {
   @Test
-  public void testGetFieldType() throws Exception {
+  public void testXMLGetFieldType() throws Exception {
     final String expectedFloatClass = RANDOMIZED_NUMERIC_FIELDTYPES.get(Float.class);
     final boolean expectedDocValues = Boolean.getBoolean(NUMERIC_DOCVALUES_SYSPROP);
-    assertQ("/schema/fieldtypes/float?indent=on&wt=xml&showDefaults=true",
+    assertQ("/schema/fieldtypes/float?wt=xml&showDefaults=true",
             "count(/response/lst[@name='fieldType']) = 1",
             "count(/response/lst[@name='fieldType']/*) = 17",
             "/response/lst[@name='fieldType']/str[@name='name'] = 'float'",
@@ -46,8 +46,8 @@ public class TestFieldTypeResource extends SolrRestletTestBase {
   }
 
   @Test
-  public void testGetNotFoundFieldType() throws Exception {
-    assertQ("/schema/fieldtypes/not_in_there?indent=on&wt=xml",
+  public void testXMLGetNotFoundFieldType() throws Exception {
+    assertQ("/schema/fieldtypes/not_in_there?wt=xml",
             "count(/response/lst[@name='fieldtypes']) = 0",
             "/response/lst[@name='responseHeader']/int[@name='status'] = '404'",
             "/response/lst[@name='error']/int[@name='code'] = '404'");
@@ -57,7 +57,7 @@ public class TestFieldTypeResource extends SolrRestletTestBase {
   public void testJsonGetFieldType() throws Exception {
     final String expectedFloatClass = RANDOMIZED_NUMERIC_FIELDTYPES.get(Float.class);
     final boolean expectedDocValues = Boolean.getBoolean(NUMERIC_DOCVALUES_SYSPROP);
-    assertJQ("/schema/fieldtypes/float?indent=on&showDefaults=on",  // assertJQ will add "&wt=json"
+    assertJQ("/schema/fieldtypes/float?showDefaults=on",
              "/fieldType/name=='float'",
              "/fieldType/class=='"+expectedFloatClass+"'",
              "/fieldType/precisionStep=='0'",
@@ -76,8 +76,8 @@ public class TestFieldTypeResource extends SolrRestletTestBase {
   }
   
   @Test
-  public void testGetFieldTypeDontShowDefaults() throws Exception {
-    assertQ("/schema/fieldtypes/teststop?wt=xml&indent=on",
+  public void testXMLGetFieldTypeDontShowDefaults() throws Exception {
+    assertQ("/schema/fieldtypes/teststop?wt=xml",
             "count(/response/lst[@name='fieldType']/*) = 3",
             "/response/lst[@name='fieldType']/str[@name='name'] = 'teststop'",
             "/response/lst[@name='fieldType']/str[@name='class'] = 'solr.TextField'",

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaNameResource.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaNameResource.java b/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaNameResource.java
index 671181a..f6b94ac 100644
--- a/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaNameResource.java
+++ b/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaNameResource.java
@@ -21,7 +21,7 @@ import org.junit.Test;
 public class TestSchemaNameResource extends SolrRestletTestBase {
   @Test
   public void testGetSchemaName() throws Exception {
-    assertQ("/schema/name?indent=on&wt=xml",
+    assertQ("/schema/name?wt=xml",
             "count(/response/str[@name='name']) = 1",
             "/response/str[@name='name'][.='test-rest']");
   }

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaResource.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaResource.java b/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaResource.java
index cc8cc33..b60092b 100644
--- a/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaResource.java
+++ b/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaResource.java
@@ -103,7 +103,7 @@ public class TestSchemaResource extends SolrRestletTestBase {
 
   @Test
   public void testJSONResponse() throws Exception {
-    assertJQ("/schema?wt=json", // Should work with or without a trailing slash
+    assertJQ("/schema", // Should work with or without a trailing slash
 
              "/schema/name=='test-rest'",
              "/schema/version==1.6",

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaSimilarityResource.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaSimilarityResource.java b/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaSimilarityResource.java
index 2016677..046ebb2 100644
--- a/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaSimilarityResource.java
+++ b/solr/core/src/test/org/apache/solr/rest/schema/TestSchemaSimilarityResource.java
@@ -27,7 +27,7 @@ public class TestSchemaSimilarityResource extends SolrRestletTestBase {
    */
   @Test
   public void testGetSchemaSimilarity() throws Exception {
-    assertQ("/schema/similarity?indent=on&wt=xml",
+    assertQ("/schema/similarity?wt=xml",
             "count(/response/lst[@name='similarity']) = 1",
             "/response/lst[@name='similarity']/str[@name='class'][.='org.apache.solr.search.similarities.SchemaSimilarityFactory']");
   }

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/schema/TestBulkSchemaConcurrent.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/schema/TestBulkSchemaConcurrent.java b/solr/core/src/test/org/apache/solr/schema/TestBulkSchemaConcurrent.java
index 42e72ee..b3958f8 100644
--- a/solr/core/src/test/org/apache/solr/schema/TestBulkSchemaConcurrent.java
+++ b/solr/core/src/test/org/apache/solr/schema/TestBulkSchemaConcurrent.java
@@ -149,7 +149,7 @@ public class TestBulkSchemaConcurrent  extends AbstractFullDistribZkTestBase {
     payload = payload.replace("myNewFieldTypeName", newFieldTypeName);
 
     RestTestHarness publisher = restTestHarnesses.get(r.nextInt(restTestHarnesses.size()));
-    String response = publisher.post("/schema?wt=json", SolrTestCaseJ4.json(payload));
+    String response = publisher.post("/schema", SolrTestCaseJ4.json(payload));
     Map map = (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     Object errors = map.get("errors");
     if (errors != null) {
@@ -219,7 +219,7 @@ public class TestBulkSchemaConcurrent  extends AbstractFullDistribZkTestBase {
     payload = payload.replace("myNewFieldTypeName", newFieldTypeName);
 
     RestTestHarness publisher = restTestHarnesses.get(r.nextInt(restTestHarnesses.size()));
-    String response = publisher.post("/schema?wt=json", SolrTestCaseJ4.json(payload));
+    String response = publisher.post("/schema", SolrTestCaseJ4.json(payload));
     Map map = (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     Object errors = map.get("errors");
     if (errors != null) {
@@ -281,7 +281,7 @@ public class TestBulkSchemaConcurrent  extends AbstractFullDistribZkTestBase {
     payload = payload.replace("myNewFieldTypeName", newFieldTypeName);
 
     RestTestHarness publisher = restTestHarnesses.get(r.nextInt(restTestHarnesses.size()));
-    String response = publisher.post("/schema?wt=json", SolrTestCaseJ4.json(payload));
+    String response = publisher.post("/schema", SolrTestCaseJ4.json(payload));
     Map map = (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     Object errors = map.get("errors");
     if (errors != null) {

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/schema/TestUseDocValuesAsStored2.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/schema/TestUseDocValuesAsStored2.java b/solr/core/src/test/org/apache/solr/schema/TestUseDocValuesAsStored2.java
index 48c30b2..5225988 100644
--- a/solr/core/src/test/org/apache/solr/schema/TestUseDocValuesAsStored2.java
+++ b/solr/core/src/test/org/apache/solr/schema/TestUseDocValuesAsStored2.java
@@ -88,7 +88,7 @@ public class TestUseDocValuesAsStored2 extends RestTestBase {
         "                       }\n" +
         "          }\n";
 
-    String response = harness.post("/schema?wt=json", json(payload));
+    String response = harness.post("/schema", json(payload));
 
     Map m = (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNull(response, m.get("errors"));
@@ -140,7 +140,7 @@ public class TestUseDocValuesAsStored2 extends RestTestBase {
         "                       'docValues':true,\n" +
         "                       'indexed':false\n" +
         "                       }}";
-    response = harness.post("/schema?wt=json", json(payload));
+    response = harness.post("/schema", json(payload));
     m = TestBulkSchemaAPI.getObj(harness, "a1", "fields");
     assertNotNull("field a1 doesn't exist any more", m);
     assertEquals(Boolean.FALSE, m.get("useDocValuesAsStored"));
@@ -155,7 +155,7 @@ public class TestUseDocValuesAsStored2 extends RestTestBase {
         "                       'docValues':true,\n" +
         "                       'indexed':false\n" +
         "                       }}";
-    response = harness.post("/schema?wt=json", json(payload));
+    response = harness.post("/schema", json(payload));
     m = TestBulkSchemaAPI.getObj(harness, "a1", "fields");
     assertNotNull("field a1 doesn't exist any more", m);
     assertEquals(Boolean.TRUE, m.get("useDocValuesAsStored"));
@@ -169,7 +169,7 @@ public class TestUseDocValuesAsStored2 extends RestTestBase {
         "                       'docValues':true,\n" +
         "                       'indexed':true\n" +
         "                       }}";
-    response = harness.post("/schema?wt=json", json(payload));
+    response = harness.post("/schema", json(payload));
     m = TestBulkSchemaAPI.getObj(harness, "a4", "fields");
     assertNotNull("field a4 not found", m);
     assertEquals(Boolean.TRUE, m.get("useDocValuesAsStored"));

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/search/TestHashQParserPlugin.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/search/TestHashQParserPlugin.java b/solr/core/src/test/org/apache/solr/search/TestHashQParserPlugin.java
index a4fa1b8..3f320ce 100644
--- a/solr/core/src/test/org/apache/solr/search/TestHashQParserPlugin.java
+++ b/solr/core/src/test/org/apache/solr/search/TestHashQParserPlugin.java
@@ -84,6 +84,7 @@ public class TestHashQParserPlugin extends SolrTestCaseJ4 {
     params.add("fq", "{!hash worker=0 workers=3 cost="+getCost(random)+"}");
     params.add("partitionKeys", "a_s");
     params.add("rows","50");
+    params.add("wt", "xml");
     HashSet set1 = new HashSet();
     String response = h.query(req(params));
 
@@ -102,6 +103,7 @@ public class TestHashQParserPlugin extends SolrTestCaseJ4 {
     params.add("fq", "{!hash worker=1 workers=3 cost="+getCost(random)+"}");
     params.add("partitionKeys", "a_s");
     params.add("rows","50");
+    params.add("wt", "xml");
     HashSet set2 = new HashSet();
     response = h.query(req(params));
 
@@ -121,6 +123,7 @@ public class TestHashQParserPlugin extends SolrTestCaseJ4 {
     params.add("fq", "{!hash worker=2 workers=3 cost="+getCost(random)+"}");
     params.add("partitionKeys", "a_s");
     params.add("rows","50");
+    params.add("wt", "xml");
     HashSet set3 = new HashSet();
     response = h.query(req(params));
 
@@ -151,6 +154,7 @@ public class TestHashQParserPlugin extends SolrTestCaseJ4 {
     params.add("fq", "{!hash worker=0 workers=2 cost="+getCost(random)+"}");
     params.add("partitionKeys", "a_i");
     params.add("rows","50");
+    params.add("wt", "xml");
     set1 = new HashSet();
     response = h.query(req(params));
 
@@ -169,6 +173,7 @@ public class TestHashQParserPlugin extends SolrTestCaseJ4 {
     params.add("fq", "{!hash worker=1 workers=2 cost="+getCost(random)+"}");
     params.add("partitionKeys", "a_i");
     params.add("rows","50");
+    params.add("wt", "xml");
     set2 = new HashSet();
     response = h.query(req(params));
 
@@ -196,6 +201,7 @@ public class TestHashQParserPlugin extends SolrTestCaseJ4 {
     params.add("fq", "{!hash worker=0 workers=2 cost="+getCost(random)+"}");
     params.add("partitionKeys", "a_s,       a_i,      a_l");
     params.add("rows","50");
+    params.add("wt", "xml");
     set1 = new HashSet();
     response = h.query(req(params));
 
@@ -214,6 +220,7 @@ public class TestHashQParserPlugin extends SolrTestCaseJ4 {
     params.add("fq", "{!hash worker=1 workers=2 cost="+getCost(random)+"}");
     params.add("partitionKeys", "a_s, a_i, a_l");
     params.add("rows","50");
+    params.add("wt", "xml");
     set2 = new HashSet();
     response = h.query(req(params));
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java b/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java
index 157f61a..385084f 100644
--- a/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java
+++ b/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java
@@ -203,7 +203,7 @@ public class BasicAuthIntegrationTest extends SolrCloudTestCase {
 
       executeCommand(baseUrl + authcPrefix, cl, "{set-property : { blockUnknown: true}}", "harry", "HarryIsUberCool");
       verifySecurityStatus(cl, baseUrl + authcPrefix, "authentication/blockUnknown", "true", 20, "harry", "HarryIsUberCool");
-      verifySecurityStatus(cl, baseUrl + "/admin/info/key?wt=json", "key", NOT_NULL_PREDICATE, 20);
+      verifySecurityStatus(cl, baseUrl + "/admin/info/key", "key", NOT_NULL_PREDICATE, 20);
 
       String[] toolArgs = new String[]{
           "status", "-solr", baseUrl};

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/servlet/HttpSolrCallGetCoreTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/servlet/HttpSolrCallGetCoreTest.java b/solr/core/src/test/org/apache/solr/servlet/HttpSolrCallGetCoreTest.java
index bd851eb..ae683e5 100644
--- a/solr/core/src/test/org/apache/solr/servlet/HttpSolrCallGetCoreTest.java
+++ b/solr/core/src/test/org/apache/solr/servlet/HttpSolrCallGetCoreTest.java
@@ -120,7 +120,7 @@ public class HttpSolrCallGetCoreTest extends SolrCloudTestCase {
 
     @Override
     public String getQueryString() {
-      return "wt=json&version=2";
+      return "version=2";
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/update/processor/TestNamedUpdateProcessors.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/update/processor/TestNamedUpdateProcessors.java b/solr/core/src/test/org/apache/solr/update/processor/TestNamedUpdateProcessors.java
index 3242c09..8db4f96 100644
--- a/solr/core/src/test/org/apache/solr/update/processor/TestNamedUpdateProcessors.java
+++ b/solr/core/src/test/org/apache/solr/update/processor/TestNamedUpdateProcessors.java
@@ -82,10 +82,10 @@ public class TestNamedUpdateProcessors extends AbstractFullDistribZkTestBase {
         "'add-runtimelib' : { 'name' : 'colltest' ,'version':1}\n" +
         "}";
     RestTestHarness client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(client, "/config", payload);
     TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "runtimeLib", blobName, "version"),
         1l, 10);
@@ -97,11 +97,11 @@ public class TestNamedUpdateProcessors extends AbstractFullDistribZkTestBase {
         "}";
 
     client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(client, "/config", payload);
     for (RestTestHarness restTestHarness : restTestHarnesses) {
       TestSolrConfigHandler.testForResponseElement(restTestHarness,
           null,
-          "/config/overlay?wt=json",
+          "/config/overlay",
           null,
           Arrays.asList("overlay", "updateProcessor", "firstFld", "fieldName"),
           "test_s", 10);

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/example/example-DIH/solr/atom/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/example/example-DIH/solr/atom/conf/solrconfig.xml b/solr/example/example-DIH/solr/atom/conf/solrconfig.xml
index 105f296..5cf00d9 100644
--- a/solr/example/example-DIH/solr/atom/conf/solrconfig.xml
+++ b/solr/example/example-DIH/solr/atom/conf/solrconfig.xml
@@ -44,6 +44,9 @@
     <lst name="defaults">
       <str name="echoParams">explicit</str>
       <str name="df">text</str>
+       <!-- Change from JSON to XML format (the default prior to Solr 7.0)
+          <str name="wt">xml</str> 
+         -->
     </lst>
   </requestHandler>
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/example/example-DIH/solr/db/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/example/example-DIH/solr/db/conf/solrconfig.xml b/solr/example/example-DIH/solr/db/conf/solrconfig.xml
index aae723d..6b53a95 100644
--- a/solr/example/example-DIH/solr/db/conf/solrconfig.xml
+++ b/solr/example/example-DIH/solr/db/conf/solrconfig.xml
@@ -713,6 +713,9 @@
        <str name="echoParams">explicit</str>
        <int name="rows">10</int>
        <str name="df">text</str>
+       <!-- Change from JSON to XML format (the default prior to Solr 7.0)
+          <str name="wt">xml</str> 
+         -->
      </lst>
     <!-- In addition to defaults, "appends" params can be specified
          to identify values which should be appended to the list of

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/example/example-DIH/solr/mail/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/example/example-DIH/solr/mail/conf/solrconfig.xml b/solr/example/example-DIH/solr/mail/conf/solrconfig.xml
index c9eb15c..ba7f2e1 100644
--- a/solr/example/example-DIH/solr/mail/conf/solrconfig.xml
+++ b/solr/example/example-DIH/solr/mail/conf/solrconfig.xml
@@ -716,6 +716,9 @@
        <str name="echoParams">explicit</str>
        <int name="rows">10</int>
        <str name="df">text</str>
+       <!-- Change from JSON to XML format (the default prior to Solr 7.0)
+          <str name="wt">xml</str> 
+         -->
      </lst>
     <!-- In addition to defaults, "appends" params can be specified
          to identify values which should be appended to the list of

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/example/example-DIH/solr/solr/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/example/example-DIH/solr/solr/conf/solrconfig.xml b/solr/example/example-DIH/solr/solr/conf/solrconfig.xml
index f05f892..745e575 100644
--- a/solr/example/example-DIH/solr/solr/conf/solrconfig.xml
+++ b/solr/example/example-DIH/solr/solr/conf/solrconfig.xml
@@ -713,6 +713,9 @@
        <str name="echoParams">explicit</str>
        <int name="rows">10</int>
        <str name="df">text</str>
+       <!-- Change from JSON to XML format (the default prior to Solr 7.0)
+          <str name="wt">xml</str> 
+         -->
      </lst>
     <!-- In addition to defaults, "appends" params can be specified
          to identify values which should be appended to the list of

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/example/example-DIH/solr/tika/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/example/example-DIH/solr/tika/conf/solrconfig.xml b/solr/example/example-DIH/solr/tika/conf/solrconfig.xml
index b00b623..0e86385 100644
--- a/solr/example/example-DIH/solr/tika/conf/solrconfig.xml
+++ b/solr/example/example-DIH/solr/tika/conf/solrconfig.xml
@@ -46,6 +46,9 @@
     <lst name="defaults">
       <str name="echoParams">explicit</str>
       <str name="df">text</str>
+       <!-- Change from JSON to XML format (the default prior to Solr 7.0)
+          <str name="wt">xml</str> 
+         -->
     </lst>
   </requestHandler>
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/example/exampledocs/test_utf8.sh
----------------------------------------------------------------------
diff --git a/solr/example/exampledocs/test_utf8.sh b/solr/example/exampledocs/test_utf8.sh
index b750bde..9032e12 100755
--- a/solr/example/exampledocs/test_utf8.sh
+++ b/solr/example/exampledocs/test_utf8.sh
@@ -82,8 +82,8 @@ else
   echo "ERROR: HTTP POST + URL params is not accepting UTF-8 beyond the basic multilingual plane"
 fi
 
-#curl "$SOLR_URL/select?q=$UTF8_Q&echoParams=explicit&wt=json" 2> /dev/null | od -tx1 -w1000 | sed 's/ //g' | grep 'f4808198' > /dev/null 2>&1
-curl "$SOLR_URL/select?q=$UTF8_Q&echoParams=explicit&wt=json" 2> /dev/null | grep "$CHAR" > /dev/null 2>&1
+#curl "$SOLR_URL/select?q=$UTF8_Q&echoParams=explicit" 2> /dev/null | od -tx1 -w1000 | sed 's/ //g' | grep 'f4808198' > /dev/null 2>&1
+curl "$SOLR_URL/select?q=$UTF8_Q&echoParams=explicit" 2> /dev/null | grep "$CHAR" > /dev/null 2>&1
 if [ $? = 0 ]; then
   echo "Response correctly returns UTF-8 beyond the basic multilingual plane"
 else

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/example/files/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/example/files/conf/solrconfig.xml b/solr/example/files/conf/solrconfig.xml
index ae858ec..748bd0f 100644
--- a/solr/example/files/conf/solrconfig.xml
+++ b/solr/example/files/conf/solrconfig.xml
@@ -703,7 +703,12 @@
     <lst name="defaults">
       <str name="echoParams">explicit</str>
       <int name="rows">10</int>
-      <!-- <str name="df">text</str> -->
+      <!-- Default search field
+         <str name="df">text</str> 
+        -->
+      <!-- Change from JSON to XML format (the default prior to Solr 7.0)
+         <str name="wt">xml</str> 
+        -->
     </lst>
     <!-- In addition to defaults, "appends" params can be specified
          to identify values which should be appended to the list of

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/server/solr/configsets/_default/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/server/solr/configsets/_default/conf/solrconfig.xml b/solr/server/solr/configsets/_default/conf/solrconfig.xml
index c18febb..3b11082 100644
--- a/solr/server/solr/configsets/_default/conf/solrconfig.xml
+++ b/solr/server/solr/configsets/_default/conf/solrconfig.xml
@@ -716,7 +716,12 @@
     <lst name="defaults">
       <str name="echoParams">explicit</str>
       <int name="rows">10</int>
-      <!-- <str name="df">text</str> -->
+      <!-- Default search field
+         <str name="df">text</str> 
+        -->
+      <!-- Change from JSON to XML format (the default prior to Solr 7.0)
+         <str name="wt">xml</str> 
+        -->
     </lst>
     <!-- In addition to defaults, "appends" params can be specified
          to identify values which should be appended to the list of

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml b/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
index 76e4db2..42b12cf 100644
--- a/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
+++ b/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
@@ -749,6 +749,12 @@
      <lst name="defaults">
        <str name="echoParams">explicit</str>
        <int name="rows">10</int>
+       <!-- Default search field
+          <str name="df">text</str> 
+         -->
+       <!-- Change from JSON to XML format (the default prior to Solr 7.0)
+          <str name="wt">xml</str> 
+         -->
        <!-- Controls the distribution of a query to shards other than itself.
             Consider making 'preferLocalShards' true when:
               1) maxShardsPerNode > 1

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/site/quickstart.mdtext
----------------------------------------------------------------------
diff --git a/solr/site/quickstart.mdtext b/solr/site/quickstart.mdtext
index 3c82adb..fcd9be0 100644
--- a/solr/site/quickstart.mdtext
+++ b/solr/site/quickstart.mdtext
@@ -22,13 +22,15 @@ Note that the base directory name may vary with the version of Solr downloaded.
 Cygwin, or MacOS:
 
     /:$ ls solr*
-    solr-6.2.0.zip
-    /:$ unzip -q solr-6.2.0.zip
-    /:$ cd solr-6.2.0/
+    solr-X.Y.Z.zip
+    /:$ unzip -q solr-X.Y.Z.zip
+    /:$ cd solr-X.Y.Z/
+
+Note that "X.Y.Z" will be replaced by an official Solr version (i.e. 6.4.3, 7.0.0, etc.)
 
 To launch Solr, run: `bin/solr start -e cloud -noprompt`
 
-    /solr-6.2.0:$ bin/solr start -e cloud -noprompt
+    /solr-X.Y.Z:$ bin/solr start -e cloud -noprompt
 
     Welcome to the SolrCloud example!
 
@@ -43,7 +45,7 @@ To launch Solr, run: `bin/solr start -e cloud -noprompt`
 
     SolrCloud example running, please visit http://localhost:8983/solr
 
-    /solr-6.2.0:$ _
+    /solr-X.Y.Z:$ _
 
 You can see that the Solr is running by loading the Solr Admin UI in your web browser: <http://localhost:8983/solr/>.
 This is the main starting point for administering Solr.
@@ -79,8 +81,8 @@ subdirectory, so that makes a convenient set of (mostly) HTML files built-in to
 
 Here's what it'll look like:
 
-    /solr-6.2.0:$ bin/post -c gettingstarted docs/
-    java -classpath /solr-6.2.0/dist/solr-core-6.2.0.jar -Dauto=yes -Dc=gettingstarted -Ddata=files -Drecursive=yes org.apache.solr.util.SimplePostTool docs/
+    /solr-X.Y.Z:$ bin/post -c gettingstarted docs/
+    java -classpath /solr-X.Y.Z/dist/solr-core-X.Y.Z.jar -Dauto=yes -Dc=gettingstarted -Ddata=files -Drecursive=yes org.apache.solr.util.SimplePostTool docs/
     SimplePostTool version 5.0.0
     Posting files to [base] url http://localhost:8983/solr/gettingstarted/update...
     Entering auto mode. File endings considered are xml,json,jsonl,csv,pdf,doc,docx,ppt,pptx,xls,xlsx,odt,odp,ods,ott,otp,ots,rtf,htm,html,txt,log
@@ -133,8 +135,8 @@ Using `bin/post`, index the example Solr XML files in `example/exampledocs/`:
 
 Here's what you'll see:
 
-    /solr-6.2.0:$ bin/post -c gettingstarted example/exampledocs/*.xml
-    java -classpath /solr-6.2.0/dist/solr-core-6.2.0.jar -Dauto=yes -Dc=gettingstarted -Ddata=files org.apache.solr.util.SimplePostTool example/exampledocs/gb18030-example.xml ...
+    /solr-X.Y.Z:$ bin/post -c gettingstarted example/exampledocs/*.xml
+    java -classpath /solr-X.Y.Z/dist/solr-core-X.Y.Z.jar -Dauto=yes -Dc=gettingstarted -Ddata=files org.apache.solr.util.SimplePostTool example/exampledocs/gb18030-example.xml ...
     SimplePostTool version 5.0.0
     Posting files to [base] url http://localhost:8983/solr/gettingstarted/update...
     Entering auto mode. File endings considered are xml,json,jsonl,csv,pdf,doc,docx,ppt,pptx,xls,xlsx,odt,odp,ods,ott,otp,ots,rtf,htm,html,txt,log
@@ -178,8 +180,8 @@ sample JSON file:
 
 You'll see:
 
-    /solr-6.2.0:$ bin/post -c gettingstarted example/exampledocs/books.json
-    java -classpath /solr-6.2.0/dist/solr-core-6.2.0.jar -Dauto=yes -Dc=gettingstarted -Ddata=files org.apache.solr.util.SimplePostTool example/exampledocs/books.json
+    /solr-X.Y.Z:$ bin/post -c gettingstarted example/exampledocs/books.json
+    java -classpath /solr-X.Y.Z/dist/solr-core-X.Y.Z.jar -Dauto=yes -Dc=gettingstarted -Ddata=files org.apache.solr.util.SimplePostTool example/exampledocs/books.json
     SimplePostTool version 5.0.0
     Posting files to [base] url http://localhost:8983/solr/gettingstarted/update...
     Entering auto mode. File endings considered are xml,json,jsonl,csv,pdf,doc,docx,ppt,pptx,xls,xlsx,odt,odp,ods,ott,otp,ots,rtf,htm,html,txt,log
@@ -207,8 +209,8 @@ Using `bin/post` index the included example CSV file:
 
 In your terminal you'll see:
 
-    /solr-6.2.0:$ bin/post -c gettingstarted example/exampledocs/books.csv
-    java -classpath /solr-6.2.0/dist/solr-core-6.2.0.jar -Dauto=yes -Dc=gettingstarted -Ddata=files org.apache.solr.util.SimplePostTool example/exampledocs/books.csv
+    /solr-X.Y.Z:$ bin/post -c gettingstarted example/exampledocs/books.csv
+    java -classpath /solr-X.Y.Z/dist/solr-core-X.Y.Z.jar -Dauto=yes -Dc=gettingstarted -Ddata=files org.apache.solr.util.SimplePostTool example/exampledocs/books.csv
     SimplePostTool version 5.0.0
     Posting files to [base] url http://localhost:8983/solr/gettingstarted/update...
     Entering auto mode. File endings considered are xml,json,jsonl,csv,pdf,doc,docx,ppt,pptx,xls,xlsx,odt,odp,ods,ott,otp,ots,rtf,htm,html,txt,log
@@ -277,7 +279,7 @@ in the form, you'll get 10 documents in JSON format (`*:*` in the `q` param matc
 The URL sent by the Admin UI to Solr is shown in light grey near the top right of the above screenshot - if you click on
 it, your browser will show you the raw response.  To use cURL, give the same URL in quotes on the `curl` command line:
 
-    curl "http://localhost:8983/solr/gettingstarted/select?indent=on&q=*:*&wt=json"
+    curl "http://localhost:8983/solr/gettingstarted/select?q=*:*"
 
 
 ### Basics
@@ -287,11 +289,11 @@ it, your browser will show you the raw response.  To use cURL, give the same URL
 To search for a term, give it as the `q` param value in the core-specific Solr Admin UI Query section, replace `*:*`
 with the term you want to find.  To search for "foundation":
 
-    curl "http://localhost:8983/solr/gettingstarted/select?wt=json&indent=true&q=foundation"
+    curl "http://localhost:8983/solr/gettingstarted/select?q=foundation"
 
 You'll see:
 
-    /solr-6.2.0$ curl "http://localhost:8983/solr/gettingstarted/select?wt=json&indent=true&q=foundation"
+    $ curl "http://localhost:8983/solr/gettingstarted/select?q=foundation"
     {
       "responseHeader":{
         "zkConnected":true,
@@ -315,13 +317,13 @@ default `start=0` and `rows=10`.  You can specify these params to page through r
 To restrict fields returned in the response, use the `fl` param, which takes a comma-separated list of field names.
 E.g. to only return the `id` field:
 
-    curl "http://localhost:8983/solr/gettingstarted/select?wt=json&indent=true&q=foundation&fl=id"
+    curl "http://localhost:8983/solr/gettingstarted/select?q=foundation&fl=id"
 
 `q=foundation` matches nearly all of the docs we've indexed, since most of the files under `docs/` contain
 "The Apache Software Foundation".  To restrict search to a particular field, use the syntax "`q=field:value`",
 e.g. to search for `Foundation` only in the `name` field:
 
-    curl "http://localhost:8983/solr/gettingstarted/select?wt=json&indent=true&q=name:Foundation"
+    curl "http://localhost:8983/solr/gettingstarted/select?q=name:Foundation"
 
 The above request returns only one document (`"numFound":1`) - from the response:
 
@@ -339,7 +341,7 @@ To search for a multi-term phrase, enclose it in double quotes: `q="multiple ter
 "CAS latency" - note that the space between terms must be converted to "`+`" in a URL (the Admin UI will handle URL
 encoding for you automatically):
 
-    curl "http://localhost:8983/solr/gettingstarted/select?wt=json&indent=true&q=\"CAS+latency\""
+    curl "http://localhost:8983/solr/gettingstarted/select?indent=true&q=\"CAS+latency\""
 
 You'll get back:
 
@@ -374,12 +376,12 @@ To find documents that contain both terms "`one`" and "`three`", enter `+one +th
 Admin UI Query tab.  Because the "`+`" character has a reserved purpose in URLs (encoding the space character),
 you must URL encode it for `curl` as "`%2B`":
 
-    curl "http://localhost:8983/solr/gettingstarted/select?wt=json&indent=true&q=%2Bone+%2Bthree"
+    curl "http://localhost:8983/solr/gettingstarted/select?q=%2Bone+%2Bthree"
 
 To search for documents that contain the term "`two`" but **don't** contain the term "`one`", enter `+two -one` in the
 `q` param in the Admin UI.  Again, URL encode "`+`" as "`%2B`":
 
-    curl "http://localhost:8983/solr/gettingstarted/select?wt=json&indent=true&q=%2Btwo+-one"
+    curl "http://localhost:8983/solr/gettingstarted/select?q=%2Btwo+-one"
 
 #### In depth
 
@@ -407,7 +409,7 @@ To see facet counts from all documents (`q=*:*`): turn on faceting (`facet=true`
 the `facet.field` param.  If you only want facets, and no document contents, specify `rows=0`.  The `curl` command below
 will return facet counts for the `manu_id_s` field:
 
-    curl 'http://localhost:8983/solr/gettingstarted/select?wt=json&indent=true&q=*:*&rows=0'\
+    curl 'http://localhost:8983/solr/gettingstarted/select?q=*:*&rows=0'\
     '&facet=true&facet.field=manu_id_s'
 
 In your terminal, you'll see:
@@ -458,7 +460,7 @@ like this:
 
 The data for these price range facets can be seen in JSON format with this command:
 
-    curl 'http://localhost:8983/solr/gettingstarted/select?q=*:*&wt=json&indent=on&rows=0'\
+    curl 'http://localhost:8983/solr/gettingstarted/select?q=*:*&rows=0'\
     '&facet=true'\
     '&facet.range=price'\
     '&f.price.facet.range.start=0'\
@@ -518,8 +520,7 @@ the various possible combinations.  Using the example technical product data, pi
 of the products in the "book" category (the `cat` field) are in stock or not in stock.  Here's how to get at the raw
 data for this scenario:
 
-    curl 'http://localhost:8983/solr/gettingstarted/select?q=*:*&rows=0&wt=json&indent=on'\
-    '&facet=on&facet.pivot=cat,inStock'
+    curl 'http://localhost:8983/solr/gettingstarted/select?q=*:*&rows=0&facet=on&facet.pivot=cat,inStock'
 
 This results in the following response (trimmed to just the book category output), which says out of 14 items in the
 "book" category, 12 are in stock and 2 are not in stock:

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/collections-api.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/collections-api.adoc b/solr/solr-ref-guide/src/collections-api.adoc
index 7e6742b..4640d54 100644
--- a/solr/solr-ref-guide/src/collections-api.adoc
+++ b/solr/solr-ref-guide/src/collections-api.adoc
@@ -1082,7 +1082,7 @@ Returns the current status of the overseer, performance statistics of various ov
 
 [source,text]
 ----
-http://localhost:8983/solr/admin/collections?action=OVERSEERSTATUS&wt=json
+http://localhost:8983/solr/admin/collections?action=OVERSEERSTATUS
 ----
 
 [source,json]
@@ -1171,7 +1171,7 @@ The response will include the status of the request and the status of the cluste
 
 [source,text]
 ----
-http://localhost:8983/solr/admin/collections?action=clusterstatus&wt=json
+http://localhost:8983/solr/admin/collections?action=CLUSTERSTATUS
 ----
 
 *Output*
@@ -1393,7 +1393,7 @@ Fetch the names of the collections in the cluster.
 
 [source,text]
 ----
-http://localhost:8983/solr/admin/collections?action=LIST&wt=json
+http://localhost:8983/solr/admin/collections?action=LIST
 ----
 
 *Output*

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/common-query-parameters.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/common-query-parameters.adoc b/solr/solr-ref-guide/src/common-query-parameters.adoc
index 08ce788..e49cb0c 100644
--- a/solr/solr-ref-guide/src/common-query-parameters.adoc
+++ b/solr/solr-ref-guide/src/common-query-parameters.adoc
@@ -231,6 +231,8 @@ If set to `true`, this parameter excludes the header from the returned results.
 
 The `wt` parameter selects the Response Writer that Solr should use to format the query's response. For detailed descriptions of Response Writers, see <<response-writers.adoc#response-writers,Response Writers>>.
 
+If you do not define the `wt` parameter in your queries, JSON will be returned as the format of the response.
+
 == cache Parameter
 
 Solr caches the results of all queries and filter queries by default. To disable result caching, set the `cache=false` parameter.

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/config-api.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/config-api.adoc b/solr/solr-ref-guide/src/config-api.adoc
index 00db281..668ab73 100644
--- a/solr/solr-ref-guide/src/config-api.adoc
+++ b/solr/solr-ref-guide/src/config-api.adoc
@@ -214,8 +214,7 @@ Here is what a request handler looks like in `solrconfig.xml`:
 <requestHandler name="/query" class="solr.SearchHandler">
   <lst name="defaults">
     <str name="echoParams">explicit</str>
-    <str name="wt">json</str>
-    <str name="indent">true</str>
+    <int name="rows">10</str>
   </lst>
 </requestHandler>
 ----
@@ -230,8 +229,7 @@ The same request handler defined with the Config API would look like this:
     "class":"solr.SearchHandler",
     "defaults":{
       "echoParams":"explicit",
-      "wt":"json",
-      "indent":true
+      "rows": 10
     }
   }
 }
@@ -400,7 +398,7 @@ curl http://localhost:8983/solr/techproducts/config -H 'Content-type:application
   "add-requesthandler" : {
     "name": "/mypath",
     "class":"solr.DumpRequestHandler",
-    "defaults":{ "x":"y" ,"a":"b", "wt":"json", "indent":true },
+    "defaults":{ "x":"y" ,"a":"b", "rows":10 },
     "useParams":"x"
   }
 }'
@@ -422,7 +420,7 @@ And you should see the following as output:
     "indent":"true",
     "a":"b",
     "x":"y",
-    "wt":"json"},
+    "rows":"10"},
   "context":{
     "webapp":"/solr",
     "path":"/mypath",
@@ -437,7 +435,7 @@ curl http://localhost:8983/solr/techproducts/config -H 'Content-type:application
   "update-requesthandler": {
     "name": "/mypath",
     "class":"solr.DumpRequestHandler",
-    "defaults": {"x":"new value for X", "wt":"json", "indent":true},
+    "defaults": {"x":"new value for X", "rows":"20"},
     "useParams":"x"
   }
 }'

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/configsets-api.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/configsets-api.adoc b/solr/solr-ref-guide/src/configsets-api.adoc
index f2d00ea..ee4f24c 100644
--- a/solr/solr-ref-guide/src/configsets-api.adoc
+++ b/solr/solr-ref-guide/src/configsets-api.adoc
@@ -133,7 +133,7 @@ Fetch the names of the ConfigSets in the cluster.
 
 [source,text]
 ----
-http://localhost:8983/solr/admin/configs?action=LIST&wt=json
+http://localhost:8983/solr/admin/configs?action=LIST
 ----
 
 *Output*

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/configuring-logging.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/configuring-logging.adoc b/solr/solr-ref-guide/src/configuring-logging.adoc
index f1ceb4b..37fe6e2 100644
--- a/solr/solr-ref-guide/src/configuring-logging.adoc
+++ b/solr/solr-ref-guide/src/configuring-logging.adoc
@@ -65,7 +65,7 @@ There is also a way of sending REST commands to the logging endpoint to do the s
 [source,bash]
 ----
 # Set the root logger to level WARN
-curl -s http://localhost:8983/solr/admin/info/logging --data-binary "set=root:WARN&wt=json"
+curl -s http://localhost:8983/solr/admin/info/logging --data-binary "set=root:WARN"
 ----
 
 == Choosing Log Level at Startup

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/cross-data-center-replication-cdcr.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/cross-data-center-replication-cdcr.adoc b/solr/solr-ref-guide/src/cross-data-center-replication-cdcr.adoc
index 50d4396..77332d3 100644
--- a/solr/solr-ref-guide/src/cross-data-center-replication-cdcr.adoc
+++ b/solr/solr-ref-guide/src/cross-data-center-replication-cdcr.adoc
@@ -698,5 +698,5 @@ When rolling in upgrades to your indexer or application, you should shutdown the
 curl http://<Source>/solr/cloud1/update -H 'Content-type:application/json' -d '[{"SKU":"ABC"}]'
 
 #check the Target
-curl "http://<Target>:8983/solr/<collection_name>/select?q=SKU:ABC&wt=json&indent=true"
+curl "http://<Target>:8983/solr/<collection_name>/select?q=SKU:ABC&indent=true"
 ----

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/enabling-ssl.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/enabling-ssl.adoc b/solr/solr-ref-guide/src/enabling-ssl.adoc
index 5357ab1..cbd8754 100644
--- a/solr/solr-ref-guide/src/enabling-ssl.adoc
+++ b/solr/solr-ref-guide/src/enabling-ssl.adoc
@@ -265,7 +265,7 @@ To get the resulting cluster status (again, if you have not enabled client authe
 
 [source,bash]
 ----
-curl -E solr-ssl.pem:secret --cacert solr-ssl.pem "https://localhost:8984/solr/admin/collections?action=CLUSTERSTATUS&wt=json&indent=on"
+curl -E solr-ssl.pem:secret --cacert solr-ssl.pem "https://localhost:8984/solr/admin/collections?action=CLUSTERSTATUS&indent=on"
 ----
 
 You should get a response that looks like this:
@@ -321,7 +321,7 @@ Use cURL to query the SolrCloud collection created above, from a directory conta
 
 [source,bash]
 ----
-curl -E solr-ssl.pem:secret --cacert solr-ssl.pem "https://localhost:8984/solr/mycollection/select?q=*:*&wt=json&indent=on"
+curl -E solr-ssl.pem:secret --cacert solr-ssl.pem "https://localhost:8984/solr/mycollection/select?q=*:*"
 ----
 
 === Index a Document using CloudSolrClient

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/faceting.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/faceting.adoc b/solr/solr-ref-guide/src/faceting.adoc
index bf23e08..4b8ce46 100644
--- a/solr/solr-ref-guide/src/faceting.adoc
+++ b/solr/solr-ref-guide/src/faceting.adoc
@@ -253,12 +253,11 @@ The `facet.pivot` parameter defines the fields to use for the pivot. Multiple `f
 The `facet.pivot.mincount` parameter defines the minimum number of documents that need to match in order for the facet to be included in results. The default is 1.
 +
 Using the "`bin/solr -e techproducts`" example, A query URL like this one will return the data below, with the pivot faceting results found in the section "facet_pivot":
-+
+
 [source,text]
 ----
 http://localhost:8983/solr/techproducts/select?q=*:*&facet.pivot=cat,popularity,inStock
-   &facet.pivot=popularity,cat&facet=true&facet.field=cat&facet.limit=5
-   &rows=0&wt=json&indent=true&facet.pivot.mincount=2
+   &facet.pivot=popularity,cat&facet=true&facet.field=cat&facet.limit=5&rows=0&facet.pivot.mincount=2
 ----
 +
 [source,json]

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/highlighting.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/highlighting.adoc b/solr/solr-ref-guide/src/highlighting.adoc
index dbad2d6..137eef4 100644
--- a/solr/solr-ref-guide/src/highlighting.adoc
+++ b/solr/solr-ref-guide/src/highlighting.adoc
@@ -100,7 +100,7 @@ Using the example documents included with Solr, we can see how this might work:
 In response to a query such as:
 
 [source,text]
-http://localhost:8983/solr/gettingstarted/select?hl=on&q=apple&wt=json&hl.fl=manu&fl=id,name,manu,cat
+http://localhost:8983/solr/gettingstarted/select?hl=on&q=apple&hl.fl=manu&fl=id,name,manu,cat
 
 we get a response such as this (truncated slightly for space):
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/mbean-request-handler.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/mbean-request-handler.adoc b/solr/solr-ref-guide/src/mbean-request-handler.adoc
index 8a3b918..65845ee 100644
--- a/solr/solr-ref-guide/src/mbean-request-handler.adoc
+++ b/solr/solr-ref-guide/src/mbean-request-handler.adoc
@@ -32,7 +32,7 @@ Restricts results by category name.
 Specifies whether statistics are returned with results. You can override the `stats` parameter on a per-field basis. The default is `false`.
 
 `wt`::
-The output format. This operates the same as the <<response-writers.adoc#response-writers,`wt` parameter in a query>>. The default is `xml`.
+The output format. This operates the same as the <<response-writers.adoc#response-writers,`wt` parameter in a query>>. The default is `json`.
 
 == MBeanRequestHandler Examples
 
@@ -47,9 +47,9 @@ To return information about the CACHE category only:
 
 `\http://localhost:8983/solr/techproducts/admin/mbeans?cat=CACHE`
 
-To return information and statistics about the CACHE category only, formatted in JSON:
+To return information and statistics about the CACHE category only, formatted in XML:
 
-`\http://localhost:8983/solr/techproducts/admin/mbeans?stats=true&cat=CACHE&indent=true&wt=json`
+`\http://localhost:8983/solr/techproducts/admin/mbeans?stats=true&cat=CACHE&wt=xml`
 
 To return information for everything, and statistics for everything except the `fieldCache`:
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/metrics-reporting.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/metrics-reporting.adoc b/solr/solr-ref-guide/src/metrics-reporting.adoc
index 4fa049e..1212bc2 100644
--- a/solr/solr-ref-guide/src/metrics-reporting.adoc
+++ b/solr/solr-ref-guide/src/metrics-reporting.adoc
@@ -390,8 +390,8 @@ Like other request handlers, the Metrics API can also take the `wt` parameter to
 
 Request only "counter" type metrics in the "core" group, returned in JSON:
 
-`\http://localhost:8983/solr/admin/metrics?wt=json&type=counter&group=core`
+`\http://localhost:8983/solr/admin/metrics?type=counter&group=core`
 
-Request only "core" group metrics that start with "INDEX", returned in JSON:
+Request only "core" group metrics that start with "INDEX", returned in XML:
 
-`\http://localhost:8983/solr/admin/metrics?wt=json&prefix=INDEX&group=core`
+`\http://localhost:8983/solr/admin/metrics?wt=xml&prefix=INDEX&group=core`

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/ping.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/ping.adoc b/solr/solr-ref-guide/src/ping.adoc
index d8d730d..72ba83f 100644
--- a/solr/solr-ref-guide/src/ping.adoc
+++ b/solr/solr-ref-guide/src/ping.adoc
@@ -44,7 +44,7 @@ This command will ping the core name for a response.
 
 [source,text]
 ----
-  http://localhost:8983/solr/<collection-name>admin/ping?wt=json&distrib=true&indent=true
+  http://localhost:8983/solr/<collection-name>/admin/ping?distrib=true
 ----
 
 This command will ping all replicas of the given collection name for a response

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/query-screen.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/query-screen.adoc b/solr/solr-ref-guide/src/query-screen.adoc
index e089f4f..3ddffc1 100644
--- a/solr/solr-ref-guide/src/query-screen.adoc
+++ b/solr/solr-ref-guide/src/query-screen.adoc
@@ -27,7 +27,7 @@ image::images/query-screen/query-top.png[image,height=400]
 
 In this example, a query for `genre:Fantasy` was sent to a "films" collection. Defaults were used for all other options in the form, which are explained briefly in the table below, and covered in detail in later parts of this Guide.
 
-The response is shown to the right of the form. Requests to Solr are simply HTTP requests, and the query submitted is shown in light type above the results; if you click on this it will open a new browser window with just this request and response (without the rest of the Solr Admin UI). The rest of the response is shown in JSON, which is part of the request (see the `wt=json` part at the end).
+The response is shown to the right of the form. Requests to Solr are simply HTTP requests, and the query submitted is shown in light type above the results; if you click on this it will open a new browser window with just this request and response (without the rest of the Solr Admin UI). The rest of the response is shown in JSON, which is the default output format.
 
 The response has at least two sections, but may have several more depending on the options chosen. The two sections it always has are the `responseHeader` and the `response`. The `responseHeader` includes the status of the search (`status`), the processing time (`QTime`), and the parameters (`params`) that were used to process the query.
 
@@ -54,7 +54,7 @@ fl::
 Defines the fields to return for each document. You can explicitly list the stored fields, <<function-queries.adoc#function-queries,functions>>, and <<transforming-result-documents.adoc#transforming-result-documents,doc transformers>> you want to have returned by separating them with either a comma or a space.
 
 wt::
-Specifies the Response Writer to be used to format the query response. Defaults to XML if not specified.
+Specifies the Response Writer to be used to format the query response. Defaults to JSON if not specified.
 
 indent::
 Click this button to request that the Response Writer use indentation to make the responses more readable.

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/realtime-get.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/realtime-get.adoc b/solr/solr-ref-guide/src/realtime-get.adoc
index f7d1036..4d97455 100644
--- a/solr/solr-ref-guide/src/realtime-get.adoc
+++ b/solr/solr-ref-guide/src/realtime-get.adoc
@@ -38,8 +38,6 @@ Real Time Get requests can be performed using the `/get` handler which exists im
 <requestHandler name="/get" class="solr.RealTimeGetHandler">
   <lst name="defaults">
     <str name="omitHeader">true</str>
-    <str name="wt">json</str>
-    <str name="indent">true</str>
   </lst>
 </requestHandler>
 ----

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/request-parameters-api.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/request-parameters-api.adoc b/solr/solr-ref-guide/src/request-parameters-api.adoc
index 81646a7..b01e0f6 100644
--- a/solr/solr-ref-guide/src/request-parameters-api.adoc
+++ b/solr/solr-ref-guide/src/request-parameters-api.adoc
@@ -78,7 +78,6 @@ curl http://localhost:8983/solr/techproducts/config/params -H 'Content-type:appl
       "facet.limit":5,
       "_invariants_": {
         "facet":true,
-        "wt":"json"
        },
       "_appends_":{"facet.field":["field1","field2"]
      }
@@ -104,7 +103,6 @@ It will be equivalent to a standard request handler definition such as this one:
     <int name="facet.limit">5</int>
   </lst>
   <lst name="invariants">
-    <str name="wt">json</str>
     <bool name="facet">true</bool>
   </lst>
   <lst name="appends">

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/response-writers.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/response-writers.adoc b/solr/solr-ref-guide/src/response-writers.adoc
index 2c6113b..bc8657a 100644
--- a/solr/solr-ref-guide/src/response-writers.adoc
+++ b/solr/solr-ref-guide/src/response-writers.adoc
@@ -39,73 +39,11 @@ The `wt` parameter selects the Response Writer to be used. The list below descri
 * <<Standard XML Response Writer,xml>>
 * <<XSLT Response Writer,xslt>>
 
-
-== Standard XML Response Writer
-
-The XML Response Writer is the most general purpose and reusable Response Writer currently included with Solr. It is the format used in most discussions and documentation about the response of Solr queries.
-
-Note that the XSLT Response Writer can be used to convert the XML produced by this writer to other vocabularies or text-based formats.
-
-The behavior of the XML Response Writer can be driven by the following query parameters.
-
-=== The version Parameter
-
-The `version` parameter determines the XML protocol used in the response. Clients are strongly encouraged to _always_ specify the protocol version, so as to ensure that the format of the response they receive does not change unexpectedly if the Solr server is upgraded and a new default format is introduced.
-
-The only currently supported version value is `2.2`. The format of the `responseHeader` changed to use the same `<lst>` structure as the rest of the response.
-
-The default value is the latest supported.
-
-=== stylesheet Parameter
-
-The `stylesheet` parameter can be used to direct Solr to include a `<?xml-stylesheet type="text/xsl" href="..."?>` declaration in the XML response it returns.
-
-The default behavior is not to return any stylesheet declaration at all.
-
-[IMPORTANT]
-====
-Use of the `stylesheet` parameter is discouraged, as there is currently no way to specify external stylesheets, and no stylesheets are provided in the Solr distributions. This is a legacy parameter, which may be developed further in a future release.
-====
-
-=== indent Parameter
-
-If the `indent` parameter is used, and has a non-blank value, then Solr will make some attempts at indenting its XML response to make it more readable by humans.
-
-The default behavior is not to indent.
-
-== XSLT Response Writer
-
-The XSLT Response Writer applies an XML stylesheet to output. It can be used for tasks such as formatting results for an RSS feed.
-
-=== tr Parameter
-
-The XSLT Response Writer accepts one parameter: the `tr` parameter, which identifies the XML transformation to use. The transformation must be found in the Solr `conf/xslt` directory.
-
-The Content-Type of the response is set according to the `<xsl:output>` statement in the XSLT transform, for example: `<xsl:output media-type="text/html"/>`
-
-=== XSLT Configuration
-
-The example below, from the `sample_techproducts_configs` <<response-writers.adoc#response-writers,config set>> in the Solr distribution, shows how the XSLT Response Writer is configured.
-
-[source,xml]
-----
-<!--
-  Changes to XSLT transforms are taken into account
-  every xsltCacheLifetimeSeconds at most.
--->
-<queryResponseWriter name="xslt"
-                     class="org.apache.solr.request.XSLTResponseWriter">
-  <int name="xsltCacheLifetimeSeconds">5</int>
-</queryResponseWriter>
-----
-
-A value of 5 for `xsltCacheLifetimeSeconds` is good for development, to see XSLT changes quickly. For production you probably want a much higher value.
-
 == JSON Response Writer
 
-A very commonly used Response Writer is the `JsonResponseWriter`, which formats output in JavaScript Object Notation (JSON), a lightweight data interchange format specified in specified in RFC 4627. Setting the `wt` parameter to `json` invokes this Response Writer.
+The default Solr Response Writer is the `JsonResponseWriter`, which formats output in JavaScript Object Notation (JSON), a lightweight data interchange format specified in specified in RFC 4627. If you do not set the `wt` parameter in your request, you will get JSON by default.
 
-Here is a sample response for a simple query like `q=id:VS1GB400C3&wt=json`:
+Here is a sample response for a simple query like `q=id:VS1GB400C3`:
 
 [source,json]
 ----
@@ -115,9 +53,7 @@ Here is a sample response for a simple query like `q=id:VS1GB400C3&wt=json`:
     "status":0,
     "QTime":7,
     "params":{
-      "q":"id:VS1GB400C3",
-      "indent":"on",
-      "wt":"json"}},
+      "q":"id:VS1GB400C3"}},
   "response":{"numFound":1,"start":0,"maxScore":2.3025851,"docs":[
       {
         "id":"VS1GB400C3",
@@ -193,6 +129,68 @@ With input of `NamedList("a"=1, "bar"="foo", null=3, null=null)`, the output wou
 * http://www.xml.com/pub/a/2005/12/21/json-dynamic-script-tag.html
 * http://www.theurer.cc/blog/2005/12/15/web-services-json-dump-your-proxy/
 
+
+== Standard XML Response Writer
+
+The XML Response Writer is the most general purpose and reusable Response Writer currently included with Solr. It is the format used in most discussions and documentation about the response of Solr queries.
+
+Note that the XSLT Response Writer can be used to convert the XML produced by this writer to other vocabularies or text-based formats.
+
+The behavior of the XML Response Writer can be driven by the following query parameters.
+
+=== The version Parameter
+
+The `version` parameter determines the XML protocol used in the response. Clients are strongly encouraged to _always_ specify the protocol version, so as to ensure that the format of the response they receive does not change unexpectedly if the Solr server is upgraded and a new default format is introduced.
+
+The only currently supported version value is `2.2`. The format of the `responseHeader` changed to use the same `<lst>` structure as the rest of the response.
+
+The default value is the latest supported.
+
+=== stylesheet Parameter
+
+The `stylesheet` parameter can be used to direct Solr to include a `<?xml-stylesheet type="text/xsl" href="..."?>` declaration in the XML response it returns.
+
+The default behavior is not to return any stylesheet declaration at all.
+
+[IMPORTANT]
+====
+Use of the `stylesheet` parameter is discouraged, as there is currently no way to specify external stylesheets, and no stylesheets are provided in the Solr distributions. This is a legacy parameter, which may be developed further in a future release.
+====
+
+=== indent Parameter
+
+If the `indent` parameter is used, and has a non-blank value, then Solr will make some attempts at indenting its XML response to make it more readable by humans.
+
+The default behavior is not to indent.
+
+== XSLT Response Writer
+
+The XSLT Response Writer applies an XML stylesheet to output. It can be used for tasks such as formatting results for an RSS feed.
+
+=== tr Parameter
+
+The XSLT Response Writer accepts one parameter: the `tr` parameter, which identifies the XML transformation to use. The transformation must be found in the Solr `conf/xslt` directory.
+
+The Content-Type of the response is set according to the `<xsl:output>` statement in the XSLT transform, for example: `<xsl:output media-type="text/html"/>`
+
+=== XSLT Configuration
+
+The example below, from the `sample_techproducts_configs` <<response-writers.adoc#response-writers,config set>> in the Solr distribution, shows how the XSLT Response Writer is configured.
+
+[source,xml]
+----
+<!--
+  Changes to XSLT transforms are taken into account
+  every xsltCacheLifetimeSeconds at most.
+-->
+<queryResponseWriter name="xslt"
+                     class="org.apache.solr.request.XSLTResponseWriter">
+  <int name="xsltCacheLifetimeSeconds">5</int>
+</queryResponseWriter>
+----
+
+A value of 5 for `xsltCacheLifetimeSeconds` is good for development, to see XSLT changes quickly. For production you probably want a much higher value.
+
 == Binary Response Writer
 
 This is a custom binary format used by Solr for inter-node communication as well as client-server communication. SolrJ uses this as the default for indexing as well as querying. See <<client-apis.adoc#client-apis,Client APIs>> for more details.

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/result-grouping.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/result-grouping.adoc b/solr/solr-ref-guide/src/result-grouping.adoc
index a0bb076..8a51e12 100644
--- a/solr/solr-ref-guide/src/result-grouping.adoc
+++ b/solr/solr-ref-guide/src/result-grouping.adoc
@@ -126,7 +126,7 @@ All of the following sample queries work with Solr's "`bin/solr -e techproducts`
 
 In this example, we will group results based on the `manu_exact` field, which specifies the manufacturer of the items in the sample dataset.
 
-`\http://localhost:8983/solr/techproducts/select?wt=json&indent=true&fl=id,name&q=solr+memory&group=true&group.field=manu_exact`
+`\http://localhost:8983/solr/techproducts/select?fl=id,name&q=solr+memory&group=true&group.field=manu_exact`
 
 [source,json]
 ----
@@ -177,7 +177,7 @@ The response indicates that there are six total matches for our query. For each
 
 We can run the same query with the request parameter `group.main=true`. This will format the results as a single flat document list. This flat format does not include as much information as the normal result grouping query results – notably the `numFound` in each group – but it may be easier for existing Solr clients to parse.
 
-`\http://localhost:8983/solr/techproducts/select?wt=json&indent=true&fl=id,name,manufacturer&q=solr+memory&group=true&group.field=manu_exact&group.main=true`
+`\http://localhost:8983/solr/techproducts/select?fl=id,name,manufacturer&q=solr+memory&group=true&group.field=manu_exact&group.main=true`
 
 [source,json]
 ----
@@ -191,8 +191,7 @@ We can run the same query with the request parameter `group.main=true`. This wil
       "q":"solr memory",
       "group.field":"manu_exact",
       "group.main":"true",
-      "group":"true",
-      "wt":"json"}},
+      "group":"true"}},
   "grouped":{},
   "response":{"numFound":6,"start":0,"docs":[
       {
@@ -218,7 +217,7 @@ We can run the same query with the request parameter `group.main=true`. This wil
 
 In this example, we will use the `group.query` parameter to find the top three results for "memory" in two different price ranges: 0.00 to 99.99, and over 100.
 
-`\http://localhost:8983/solr/techproducts/select?wt=json&indent=true&fl=name,price&q=memory&group=true&group.query=price:[0+TO+99.99]&group.query=price:[100+TO+*]&group.limit=3`
+`\http://localhost:8983/solr/techproducts/select?indent=true&fl=name,price&q=memory&group=true&group.query=price:[0+TO+99.99]&group.query=price:[100+TO+*]&group.limit=3`
 
 [source,json]
 ----
@@ -233,8 +232,7 @@ In this example, we will use the `group.query` parameter to find the top three r
       "group.limit":"3",
       "group.query":["price:[0 TO 99.99]",
       "price:[100 TO *]"],
-      "group":"true",
-      "wt":"json"}},
+      "group":"true"}},
   "grouped":{
     "price:[0 TO 99.99]":{
       "matches":5,

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/schema-api.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/schema-api.adoc b/solr/solr-ref-guide/src/schema-api.adoc
index a12eeb5..c120e0a 100644
--- a/solr/solr-ref-guide/src/schema-api.adoc
+++ b/solr/solr-ref-guide/src/schema-api.adoc
@@ -420,7 +420,7 @@ Get the entire schema in JSON.
 
 [source,bash]
 ----
-curl http://localhost:8983/solr/gettingstarted/schema?wt=json
+curl http://localhost:8983/solr/gettingstarted/schema
 ----
 
 [source,json]
@@ -609,7 +609,7 @@ Get a list of all fields.
 
 [source,bash]
 ----
-curl http://localhost:8983/solr/gettingstarted/schema/fields?wt=json
+curl http://localhost:8983/solr/gettingstarted/schema/fields
 ----
 
 The sample output below has been truncated to only show a few fields.
@@ -682,7 +682,7 @@ Get a list of all dynamic field declarations:
 
 [source,bash]
 ----
-curl http://localhost:8983/solr/gettingstarted/schema/dynamicfields?wt=json
+curl http://localhost:8983/solr/gettingstarted/schema/dynamicfields
 ----
 
 The sample output below has been truncated.
@@ -765,7 +765,7 @@ Get a list of all field types.
 
 [source,bash]
 ----
-curl http://localhost:8983/solr/gettingstarted/schema/fieldtypes?wt=json
+curl http://localhost:8983/solr/gettingstarted/schema/fieldtypes
 ----
 
 The sample output below has been truncated to show a few different field types from different parts of the list.
@@ -853,7 +853,7 @@ Get a list of all copyFields.
 
 [source,bash]
 ----
-curl http://localhost:8983/solr/gettingstarted/schema/copyfields?wt=json
+curl http://localhost:8983/solr/gettingstarted/schema/copyfields
 ----
 
 The sample output below has been truncated to the first few copy definitions.
@@ -914,7 +914,7 @@ Get the schema name.
 
 [source,bash]
 ----
-curl http://localhost:8983/solr/gettingstarted/schema/name?wt=json
+curl http://localhost:8983/solr/gettingstarted/schema/name
 ----
 
 [source,json]
@@ -954,7 +954,7 @@ Get the schema version
 
 [source,bash]
 ----
-curl http://localhost:8983/solr/gettingstarted/schema/version?wt=json
+curl http://localhost:8983/solr/gettingstarted/schema/version
 ----
 
 [source,json]
@@ -995,7 +995,7 @@ List the uniqueKey.
 
 [source,bash]
 ----
-curl http://localhost:8983/solr/gettingstarted/schema/uniquekey?wt=json
+curl http://localhost:8983/solr/gettingstarted/schema/uniquekey
 ----
 
 [source,json]
@@ -1035,7 +1035,7 @@ Get the similarity implementation.
 
 [source,bash]
 ----
-curl http://localhost:8983/solr/gettingstarted/schema/similarity?wt=json
+curl http://localhost:8983/solr/gettingstarted/schema/similarity
 ----
 
 [source,json]

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/solr-ref-guide/src/suggester.adoc
----------------------------------------------------------------------
diff --git a/solr/solr-ref-guide/src/suggester.adoc b/solr/solr-ref-guide/src/suggester.adoc
index 1950fc7..18a7def 100644
--- a/solr/solr-ref-guide/src/suggester.adoc
+++ b/solr/solr-ref-guide/src/suggester.adoc
@@ -414,7 +414,7 @@ Example query:
 
 [source,text]
 ----
-http://localhost:8983/solr/techproducts/suggest?suggest=true&suggest.build=true&suggest.dictionary=mySuggester&wt=json&suggest.q=elec
+http://localhost:8983/solr/techproducts/suggest?suggest=true&suggest.build=true&suggest.dictionary=mySuggester&suggest.q=elec
 ----
 
 In this example, we've simply requested the string 'elec' with the `suggest.q` parameter and requested that the suggestion dictionary be built with `suggest.build` (note, however, that you would likely not want to build the index on every query - instead you should use `buildOnCommit` or `buildOnOptimize` if you have regularly changing documents).
@@ -464,8 +464,7 @@ Example query:
 
 [source,text]
 ----
-http://localhost:8983/solr/techproducts/suggest?suggest=true& \
-    suggest.dictionary=mySuggester&suggest.dictionary=altSuggester&wt=json&suggest.q=elec
+http://localhost:8983/solr/techproducts/suggest?suggest=true&suggest.dictionary=mySuggester&suggest.dictionary=altSuggester&suggest.q=elec
 ----
 
 In this example we have sent the string 'elec' as the `suggest.q` parameter and named two `suggest.dictionary` definitions to be used.
@@ -535,7 +534,7 @@ Example context filtering suggest query:
 
 [source,text]
 ----
-http://localhost:8983/solr/techproducts/suggest?suggest=true&suggest.build=true&suggest.dictionary=mySuggester&wt=json&suggest.q=c&suggest.cfq=memory
+http://localhost:8983/solr/techproducts/suggest?suggest=true&suggest.build=true&suggest.dictionary=mySuggester&suggest.q=c&suggest.cfq=memory
 ----
 
 The suggester will only bring back suggestions for products tagged with 'cat=memory'.


[3/3] lucene-solr:master: SOLR-10494: Make default response format JSON (wt=json), and also indent text responses formats (indent=on) by default

Posted by ho...@apache.org.
SOLR-10494: Make default response format JSON (wt=json), and also indent text responses formats (indent=on) by default


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/6a59253e
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/6a59253e
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/6a59253e

Branch: refs/heads/master
Commit: 6a59253ec34e9e08d6b2306b51c81199d3f3d828
Parents: a323f55
Author: Chris Hostetter <ho...@apache.org>
Authored: Mon Jul 24 08:42:02 2017 -0700
Committer: Chris Hostetter <ho...@apache.org>
Committed: Mon Jul 24 08:42:02 2017 -0700

----------------------------------------------------------------------
 solr/CHANGES.txt                                |   8 +
 .../dataimport/TestHierarchicalDocBuilder.java  |   6 +-
 solr/contrib/ltr/example/README.md              |   2 +-
 .../src/java/org/apache/solr/core/SolrCore.java |   2 +-
 .../solr/response/TextResponseWriter.java       |   2 +-
 .../solr/servlet/DirectSolrConnection.java      |   1 +
 .../configsets/_default/conf/solrconfig.xml     |   7 +-
 .../test/org/apache/solr/TestCrossCoreJoin.java |   9 +-
 .../solr/cloud/BasicDistributedZk2Test.java     |   1 +
 .../apache/solr/cloud/SolrCloudExampleTest.java |   2 +-
 .../apache/solr/cloud/TestConfigSetsAPI.java    |   6 +-
 .../org/apache/solr/cloud/TestCryptoKeys.java   |  28 ++--
 .../solr/core/TestConfigSetImmutable.java       |   4 +-
 .../org/apache/solr/core/TestCustomStream.java  |   4 +-
 .../apache/solr/core/TestDynamicLoading.java    |  38 ++---
 .../apache/solr/core/TestSolrConfigHandler.java | 160 +++++++++----------
 .../apache/solr/handler/CheckBackupStatus.java  |   2 +-
 .../apache/solr/handler/TestConfigReload.java   |   2 +-
 .../handler/TestReplicationHandlerBackup.java   |   4 +-
 .../apache/solr/handler/TestReqParamsAPI.java   |  44 ++---
 .../apache/solr/handler/TestRestoreCore.java    |   2 +-
 .../org/apache/solr/handler/TestSQLHandler.java |   5 +-
 .../handler/TestSolrConfigHandlerCloud.java     |  40 ++---
 .../TestSolrConfigHandlerConcurrent.java        |   4 +-
 .../apache/solr/response/JSONWriterTest.java    |   4 +-
 .../solr/response/TestRawResponseWriter.java    |  11 +-
 .../solr/rest/schema/TestBulkSchemaAPI.java     |  58 +++----
 .../schema/TestCopyFieldCollectionResource.java |  12 +-
 .../schema/TestFieldCollectionResource.java     |  24 +--
 .../solr/rest/schema/TestFieldTypeResource.java |  14 +-
 .../rest/schema/TestSchemaNameResource.java     |   2 +-
 .../solr/rest/schema/TestSchemaResource.java    |   2 +-
 .../schema/TestSchemaSimilarityResource.java    |   2 +-
 .../solr/schema/TestBulkSchemaConcurrent.java   |   6 +-
 .../solr/schema/TestUseDocValuesAsStored2.java  |   8 +-
 .../solr/search/TestHashQParserPlugin.java      |   7 +
 .../solr/security/BasicAuthIntegrationTest.java |   2 +-
 .../solr/servlet/HttpSolrCallGetCoreTest.java   |   2 +-
 .../processor/TestNamedUpdateProcessors.java    |   8 +-
 .../example-DIH/solr/atom/conf/solrconfig.xml   |   3 +
 .../example-DIH/solr/db/conf/solrconfig.xml     |   3 +
 .../example-DIH/solr/mail/conf/solrconfig.xml   |   3 +
 .../example-DIH/solr/solr/conf/solrconfig.xml   |   3 +
 .../example-DIH/solr/tika/conf/solrconfig.xml   |   3 +
 solr/example/exampledocs/test_utf8.sh           |   4 +-
 solr/example/files/conf/solrconfig.xml          |   7 +-
 .../configsets/_default/conf/solrconfig.xml     |   7 +-
 .../conf/solrconfig.xml                         |   6 +
 solr/site/quickstart.mdtext                     |  51 +++---
 solr/solr-ref-guide/src/collections-api.adoc    |   6 +-
 .../src/common-query-parameters.adoc            |   2 +
 solr/solr-ref-guide/src/config-api.adoc         |  12 +-
 solr/solr-ref-guide/src/configsets-api.adoc     |   2 +-
 .../solr-ref-guide/src/configuring-logging.adoc |   2 +-
 .../src/cross-data-center-replication-cdcr.adoc |   2 +-
 solr/solr-ref-guide/src/enabling-ssl.adoc       |   4 +-
 solr/solr-ref-guide/src/faceting.adoc           |   5 +-
 solr/solr-ref-guide/src/highlighting.adoc       |   2 +-
 .../src/mbean-request-handler.adoc              |   6 +-
 solr/solr-ref-guide/src/metrics-reporting.adoc  |   6 +-
 solr/solr-ref-guide/src/ping.adoc               |   2 +-
 solr/solr-ref-guide/src/query-screen.adoc       |   4 +-
 solr/solr-ref-guide/src/realtime-get.adoc       |   2 -
 .../src/request-parameters-api.adoc             |   2 -
 solr/solr-ref-guide/src/response-writers.adoc   | 132 ++++++++-------
 solr/solr-ref-guide/src/result-grouping.adoc    |  12 +-
 solr/solr-ref-guide/src/schema-api.adoc         |  18 +--
 solr/solr-ref-guide/src/suggester.adoc          |   7 +-
 .../solr-ref-guide/src/the-terms-component.adoc |   2 +-
 .../src/transforming-result-documents.adoc      |   4 +-
 solr/solr-ref-guide/src/using-javascript.adoc   |   2 +-
 solr/solr-ref-guide/src/using-python.adoc       |   2 +-
 .../solr/client/solrj/io/stream/SolrStream.java |   2 +
 .../java/org/apache/solr/SolrTestCaseJ4.java    |   7 +
 .../java/org/apache/solr/util/RestTestBase.java |   2 +-
 .../org/apache/solr/util/RestTestHarness.java   |   6 +-
 solr/webapp/web/js/angular/controllers/query.js |   5 +-
 solr/webapp/web/partials/query.html             |   7 +-
 78 files changed, 487 insertions(+), 415 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 9964e36..b123477 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -126,6 +126,11 @@ Jetty 9.3.14.v20161028
 Upgrading from Solr 6.x
 ----------------------
 
+* The default response type is now JSON ("wt=json") instead of XML, and line indentation is now on by default
+  ("indent=on"). If you expect the responses to your queries to be returned in the previous format (XML
+  format, no indentation), you must now you must now explicitly pass in "wt=xml" and "indent=off" as query
+  parameters, or configure them as defaults on your request handlers.  See SOLR-10494 for more details.
+
 * the cluster property 'legacyCloud' is set to false from 7.0. This means 'zookeeper is the truth' by
   default. If an entry for a replica does not exist in the state.json, that replica cannot get
   registered. This may affect users who use that feature where they bring up replicas and they are
@@ -539,6 +544,9 @@ Other Changes
 
 * SOLR-11119: Switch from Trie to Points field types in the .system collection schema. (Steve Rowe)
 
+* SOLR-10494: Make default response format JSON (wt=json), and also indent text responses formats
+  (indent=on) by default (Trey Grainger & Cassandra Targett via hossman)
+
 ==================  6.7.0 ==================
 
 Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestHierarchicalDocBuilder.java
----------------------------------------------------------------------
diff --git a/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestHierarchicalDocBuilder.java b/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestHierarchicalDocBuilder.java
index 086d7be..103d0dc 100644
--- a/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestHierarchicalDocBuilder.java
+++ b/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestHierarchicalDocBuilder.java
@@ -160,9 +160,9 @@ public class TestHierarchicalDocBuilder extends AbstractDataImportHandlerTestCas
     int totalDocsNum = parentsNum + childrenNum + grandChildrenNum;
     
     String resp = runFullImport(THREE_LEVEL_HIERARCHY_CONFIG);
-    String xpath = "//arr[@name='documents']/lst/arr[@name='id' and .='"+parentId1+"']/../"+
-      "arr[@name='_childDocuments_']/lst/arr[@name='id' and .='"+childId+"']/../"+
-      "arr[@name='_childDocuments_']/lst/arr[@name='id' and .='"+grandChildrenIds.get(0)+"']";
+    String xpath = "//arr[@name='documents']/lst[arr[@name='id']/str='"+parentId1+"']/"+
+      "arr[@name='_childDocuments_']/lst[arr[@name='id']/str='"+childId+"']/"+
+      "arr[@name='_childDocuments_']/lst[arr[@name='id']/str='"+grandChildrenIds.get(0)+"']";
     String results = TestHarness.validateXPath(resp, 
            xpath);
     assertTrue("Debug documents does not contain child documents\n"+resp+"\n"+ xpath+

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/contrib/ltr/example/README.md
----------------------------------------------------------------------
diff --git a/solr/contrib/ltr/example/README.md b/solr/contrib/ltr/example/README.md
index 77e582a..06a4789 100644
--- a/solr/contrib/ltr/example/README.md
+++ b/solr/contrib/ltr/example/README.md
@@ -29,7 +29,7 @@ Please refer to the Solr Reference Guide's section on [Learning To Rank](https:/
 4. Search and rerank the results using the trained model
 
 ```
-http://localhost:8983/solr/techproducts/query?indent=on&q=test&wt=json&rq={!ltr%20model=exampleModel%20reRankDocs=25%20efi.user_query=%27test%27}&fl=price,score,name
+http://localhost:8983/solr/techproducts/query?q=test&rq={!ltr%20model=exampleModel%20reRankDocs=25%20efi.user_query=%27test%27}&fl=price,score,name
 ```
 
 # Assemble training data

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/java/org/apache/solr/core/SolrCore.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/core/SolrCore.java b/solr/core/src/java/org/apache/solr/core/SolrCore.java
index 5319881..cc6a9c2 100644
--- a/solr/core/src/java/org/apache/solr/core/SolrCore.java
+++ b/solr/core/src/java/org/apache/solr/core/SolrCore.java
@@ -2565,8 +2565,8 @@ public final class SolrCore implements SolrInfoBean, SolrMetricProducer, Closeab
   static{
     HashMap<String, QueryResponseWriter> m= new HashMap<>(15, 1);
     m.put("xml", new XMLResponseWriter());
-    m.put("standard", m.get("xml"));
     m.put(CommonParams.JSON, new JSONResponseWriter());
+    m.put("standard", m.get(CommonParams.JSON));
     m.put("geojson", new GeoJSONResponseWriter());
     m.put("graphml", new GraphMLResponseWriter());
     m.put("python", new PythonResponseWriter());

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/java/org/apache/solr/response/TextResponseWriter.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/response/TextResponseWriter.java b/solr/core/src/java/org/apache/solr/response/TextResponseWriter.java
index 261daee..4d052ae 100644
--- a/solr/core/src/java/org/apache/solr/response/TextResponseWriter.java
+++ b/solr/core/src/java/org/apache/solr/response/TextResponseWriter.java
@@ -84,7 +84,7 @@ public abstract class TextResponseWriter implements PushWriter {
     this.req = req;
     this.rsp = rsp;
     String indent = req.getParams().get("indent");
-    if (indent != null && !"".equals(indent) && !"off".equals(indent)) {
+    if (null == indent || !("off".equals(indent) || "false".equals(indent))){
       doIndent=true;
     }
     returnFields = rsp.getReturnFields();

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/java/org/apache/solr/servlet/DirectSolrConnection.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/servlet/DirectSolrConnection.java b/solr/core/src/java/org/apache/solr/servlet/DirectSolrConnection.java
index 2d3d683..7fecd29 100644
--- a/solr/core/src/java/org/apache/solr/servlet/DirectSolrConnection.java
+++ b/solr/core/src/java/org/apache/solr/servlet/DirectSolrConnection.java
@@ -63,6 +63,7 @@ public class DirectSolrConnection
    * For example:
    * 
    * String json = solr.request( "/select?qt=dismax&amp;wt=json&amp;q=...", null );
+   * String xml = solr.request( "/select?qt=dismax&amp;wt=xml&amp;q=...", null );
    * String xml = solr.request( "/update", "&lt;add&gt;&lt;doc&gt;&lt;field ..." );
    */
   public String request( String pathAndParams, String body ) throws Exception

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test-files/solr/configsets/_default/conf/solrconfig.xml
----------------------------------------------------------------------
diff --git a/solr/core/src/test-files/solr/configsets/_default/conf/solrconfig.xml b/solr/core/src/test-files/solr/configsets/_default/conf/solrconfig.xml
index c18febb..3b11082 100644
--- a/solr/core/src/test-files/solr/configsets/_default/conf/solrconfig.xml
+++ b/solr/core/src/test-files/solr/configsets/_default/conf/solrconfig.xml
@@ -716,7 +716,12 @@
     <lst name="defaults">
       <str name="echoParams">explicit</str>
       <int name="rows">10</int>
-      <!-- <str name="df">text</str> -->
+      <!-- Default search field
+         <str name="df">text</str> 
+        -->
+      <!-- Change from JSON to XML format (the default prior to Solr 7.0)
+         <str name="wt">xml</str> 
+        -->
     </lst>
     <!-- In addition to defaults, "appends" params can be specified
          to identify values which should be appended to the list of

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/TestCrossCoreJoin.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/TestCrossCoreJoin.java b/solr/core/src/test/org/apache/solr/TestCrossCoreJoin.java
index d15b3bc..492e2c3 100644
--- a/solr/core/src/test/org/apache/solr/TestCrossCoreJoin.java
+++ b/solr/core/src/test/org/apache/solr/TestCrossCoreJoin.java
@@ -21,6 +21,7 @@ import java.util.Collections;
 
 import com.google.common.collect.ImmutableMap;
 import org.apache.solr.common.SolrException.ErrorCode;
+import org.apache.solr.common.params.ModifiableSolrParams;
 import org.apache.solr.core.CoreContainer;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.request.LocalSolrQueryRequest;
@@ -109,8 +110,14 @@ public class TestCrossCoreJoin extends SolrTestCaseJ4 {
 
   public String query(SolrCore core, SolrQueryRequest req) throws Exception {
     String handler = "standard";
-    if (req.getParams().get("qt") != null)
+    if (req.getParams().get("qt") != null) {
       handler = req.getParams().get("qt");
+    }
+    if (req.getParams().get("wt") == null){
+      ModifiableSolrParams params = new ModifiableSolrParams(req.getParams());
+      params.set("wt", "xml");
+      req.setParams(params);
+    }
     SolrQueryResponse rsp = new SolrQueryResponse();
     SolrRequestInfo.setRequestInfo(new SolrRequestInfo(req, rsp));
     core.execute(core.getRequestHandler(handler), req, rsp);

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/cloud/BasicDistributedZk2Test.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/BasicDistributedZk2Test.java b/solr/core/src/test/org/apache/solr/cloud/BasicDistributedZk2Test.java
index 5bb938d..ad9f7254 100644
--- a/solr/core/src/test/org/apache/solr/cloud/BasicDistributedZk2Test.java
+++ b/solr/core/src/test/org/apache/solr/cloud/BasicDistributedZk2Test.java
@@ -56,6 +56,7 @@ public class BasicDistributedZk2Test extends AbstractFullDistribZkTestBase {
   private static final String ONE_NODE_COLLECTION = "onenodecollection";
   private final boolean onlyLeaderIndexes = random().nextBoolean();
 
+
   public BasicDistributedZk2Test() {
     super();
     // we need DVs on point fields to compute stats & facets

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/cloud/SolrCloudExampleTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/SolrCloudExampleTest.java b/solr/core/src/test/org/apache/solr/cloud/SolrCloudExampleTest.java
index 2b79408..f8b11d1 100644
--- a/solr/core/src/test/org/apache/solr/cloud/SolrCloudExampleTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/SolrCloudExampleTest.java
@@ -265,7 +265,7 @@ public class SolrCloudExampleTest extends AbstractFullDistribZkTestBase {
     DocCollection coll = cloudClient.getZkStateReader().getClusterState().getCollection(collection);
     for (Slice slice : coll.getActiveSlices()) {
       for (Replica replica : slice.getReplicas()) {
-        String uri = "" + replica.get(ZkStateReader.BASE_URL_PROP) + "/" + replica.get(ZkStateReader.CORE_NAME_PROP) + "/config?wt=json";
+        String uri = "" + replica.get(ZkStateReader.BASE_URL_PROP) + "/" + replica.get(ZkStateReader.CORE_NAME_PROP) + "/config";
         Map respMap = getAsMap(cloudClient, uri);
         Long maxTime = (Long) (getObjectByPath(respMap, true, asList("config", "updateHandler", "autoSoftCommit", "maxTime")));
         ret.put(replica.getCoreName(), maxTime);

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/cloud/TestConfigSetsAPI.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/TestConfigSetsAPI.java b/solr/core/src/test/org/apache/solr/cloud/TestConfigSetsAPI.java
index ec45429..d59b6ea 100644
--- a/solr/core/src/test/org/apache/solr/cloud/TestConfigSetsAPI.java
+++ b/solr/core/src/test/org/apache/solr/cloud/TestConfigSetsAPI.java
@@ -286,7 +286,7 @@ public class TestConfigSetsAPI extends SolrTestCaseJ4 {
     // Checking error when no configuration name is specified in request
     Map map = postDataAndGetResponse(solrCluster.getSolrClient(),
         solrCluster.getJettySolrRunners().get(0).getBaseUrl().toString()
-        + "/admin/configs?action=UPLOAD&wt=json", emptyData, null, null);
+        + "/admin/configs?action=UPLOAD", emptyData, null, null);
     assertNotNull(map);
     long statusCode = (long) getObjectByPath(map, false,
         Arrays.asList("responseHeader", "status"));
@@ -305,7 +305,7 @@ public class TestConfigSetsAPI extends SolrTestCaseJ4 {
     // Checking error when configuration name specified already exists
     map = postDataAndGetResponse(solrCluster.getSolrClient(),
         solrCluster.getJettySolrRunners().get(0).getBaseUrl().toString()
-        + "/admin/configs?action=UPLOAD&wt=json&name=myconf", emptyData, null, null);
+        + "/admin/configs?action=UPLOAD&name=myconf", emptyData, null, null);
     assertNotNull(map);
     statusCode = (long) getObjectByPath(map, false,
         Arrays.asList("responseHeader", "status"));
@@ -416,7 +416,7 @@ public class TestConfigSetsAPI extends SolrTestCaseJ4 {
       assertFalse(configManager.configExists(configSetName+suffix));
 
       Map map = postDataAndGetResponse(solrCluster.getSolrClient(),
-          solrCluster.getJettySolrRunners().get(0).getBaseUrl().toString() + "/admin/configs?action=UPLOAD&wt=json&name="+configSetName+suffix,
+          solrCluster.getJettySolrRunners().get(0).getBaseUrl().toString() + "/admin/configs?action=UPLOAD&name="+configSetName+suffix,
           sampleZippedConfig, username, password);
       assertNotNull(map);
       long statusCode = (long) getObjectByPath(map, false, Arrays.asList("responseHeader", "status"));

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/cloud/TestCryptoKeys.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/TestCryptoKeys.java b/solr/core/src/test/org/apache/solr/cloud/TestCryptoKeys.java
index ccc04f1..84bec90 100644
--- a/solr/core/src/test/org/apache/solr/cloud/TestCryptoKeys.java
+++ b/solr/core/src/test/org/apache/solr/cloud/TestCryptoKeys.java
@@ -124,11 +124,11 @@ public class TestCryptoKeys extends AbstractFullDistribZkTestBase {
         "'create-requesthandler' : { 'name' : '/runtime', 'class': 'org.apache.solr.core.RuntimeLibReqHandler' , 'runtimeLib':true }" +
         "}";
     RestTestHarness client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(client, "/config", payload);
 
     TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "requestHandler", "/runtime", "class"),
         "org.apache.solr.core.RuntimeLibReqHandler", 10);
@@ -138,15 +138,15 @@ public class TestCryptoKeys extends AbstractFullDistribZkTestBase {
         "'add-runtimelib' : { 'name' : 'signedjar' ,'version':1}\n" +
         "}";
     client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(client, "/config", payload);
     TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "runtimeLib", blobName, "version"),
         1l, 10);
 
-    Map map = TestSolrConfigHandler.getRespMap("/runtime?wt=json", client);
+    Map map = TestSolrConfigHandler.getRespMap("/runtime", client);
     String s = (String) Utils.getObjectByPath(map, false, Arrays.asList("error", "msg"));
     assertNotNull(TestBlobHandler.getAsString(map), s);
     assertTrue(TestBlobHandler.getAsString(map), s.contains("should be signed with one of the keys in ZK /keys/exe"));
@@ -157,15 +157,15 @@ public class TestCryptoKeys extends AbstractFullDistribZkTestBase {
         "'update-runtimelib' : { 'name' : 'signedjar' ,'version':1, 'sig': 'QKqHtd37QN02iMW9UEgvAO9g9qOOuG5vEBNkbUsN7noc2hhXKic/ABFIOYJA9PKw61mNX2EmNFXOcO3WClYdSw=='}\n" +
         "}";
     client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(client, "/config", payload);
     TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "runtimeLib", blobName, "sig"),
         wrongSig, 10);
 
-    map = TestSolrConfigHandler.getRespMap("/runtime?wt=json", client);
+    map = TestSolrConfigHandler.getRespMap("/runtime", client);
     s = (String) Utils.getObjectByPath(map, false, Arrays.asList("error", "msg"));
     assertNotNull(TestBlobHandler.getAsString(map), s);//No key matched signature for jar
     assertTrue(TestBlobHandler.getAsString(map), s.contains("No key matched signature for jar"));
@@ -176,17 +176,17 @@ public class TestCryptoKeys extends AbstractFullDistribZkTestBase {
         "'update-runtimelib' : { 'name' : 'signedjar' ,'version':1, 'sig': 'YkTQgOtvcM/H/5EQdABGl3wjjrPhonAGlouIx59vppBy2cZEofX3qX1yZu5sPNRmJisNXEuhHN2149dxeUmk2Q=='}\n" +
         "}";
     client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(client, "/config", payload);
     TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "runtimeLib", blobName, "sig"),
         rightSig, 10);
 
     map = TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/runtime?wt=json",
+        "/runtime",
         null,
         Arrays.asList("class"),
         "org.apache.solr.core.RuntimeLibReqHandler", 10);
@@ -197,17 +197,17 @@ public class TestCryptoKeys extends AbstractFullDistribZkTestBase {
         "'update-runtimelib' : { 'name' : 'signedjar' ,'version':1, 'sig': 'VJPMTxDf8Km3IBj2B5HWkIOqeM/o+HHNobOYCNA3WjrEVfOMZbMMqS1Lo7uLUUp//RZwOGkOhrUhuPNY1z2CGEIKX2/m8VGH64L14d52oSvFiwhoTDDuuyjW1TFGu35D'}\n" +
         "}";
     client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(client, "/config", payload);
     TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "runtimeLib", blobName, "sig"),
         rightSig, 10);
 
     map = TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/runtime?wt=json",
+        "/runtime",
         null,
         Arrays.asList("class"),
         "org.apache.solr.core.RuntimeLibReqHandler", 10);

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/core/TestConfigSetImmutable.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/core/TestConfigSetImmutable.java b/solr/core/src/test/org/apache/solr/core/TestConfigSetImmutable.java
index 30fac6a..2388b3d 100644
--- a/solr/core/src/test/org/apache/solr/core/TestConfigSetImmutable.java
+++ b/solr/core/src/test/org/apache/solr/core/TestConfigSetImmutable.java
@@ -73,7 +73,7 @@ public class TestConfigSetImmutable extends RestTestBase {
     String payload = "{\n" +
         "'create-requesthandler' : { 'name' : '/x', 'class': 'org.apache.solr.handler.DumpRequestHandler' , 'startup' : 'lazy'}\n" +
         "}";
-    String uri = "/config?wt=json";
+    String uri = "/config";
     String response = restTestHarness.post(uri, SolrTestCaseJ4.json(payload));
     Map map = (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNotNull(map.get("error"));
@@ -91,7 +91,7 @@ public class TestConfigSetImmutable extends RestTestBase {
         "                 },\n" +
         "    }";
 
-    String response = restTestHarness.post("/schema?wt=json", json(payload));
+    String response = restTestHarness.post("/schema", json(payload));
     Map map = (Map) ObjectBuilder.getVal(new JSONParser(new StringReader(response)));
     assertNotNull(map.get("errors"));
     assertTrue(map.get("errors").toString().contains("immutable"));

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/core/TestCustomStream.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/core/TestCustomStream.java b/solr/core/src/test/org/apache/solr/core/TestCustomStream.java
index 3fc6394..0a70374 100644
--- a/solr/core/src/test/org/apache/solr/core/TestCustomStream.java
+++ b/solr/core/src/test/org/apache/solr/core/TestCustomStream.java
@@ -74,10 +74,10 @@ public class TestCustomStream extends AbstractFullDistribZkTestBase {
         "}";
 
     RestTestHarness client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client,"/config?wt=json",payload);
+    TestSolrConfigHandler.runConfigCommand(client,"/config",payload);
     TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "expressible", "hello", "class"),
         "org.apache.solr.core.HelloStream",10);

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/core/TestDynamicLoading.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/core/TestDynamicLoading.java b/solr/core/src/test/org/apache/solr/core/TestDynamicLoading.java
index 9bbe09f..4dca763 100644
--- a/solr/core/src/test/org/apache/solr/core/TestDynamicLoading.java
+++ b/solr/core/src/test/org/apache/solr/core/TestDynamicLoading.java
@@ -79,10 +79,10 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase {
         "'add-runtimelib' : { 'name' : 'colltest' ,'version':1}\n" +
         "}";
     RestTestHarness client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(client, "/config", payload);
     TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "runtimeLib", blobName, "version"),
         1l, 10);
@@ -93,15 +93,15 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase {
         "}";
 
     client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client,"/config?wt=json",payload);
+    TestSolrConfigHandler.runConfigCommand(client,"/config",payload);
     TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "requestHandler", "/test1", "class"),
         "org.apache.solr.core.BlobStoreTestRequestHandler",10);
 
-    Map map = TestSolrConfigHandler.getRespMap("/test1?wt=json", client);
+    Map map = TestSolrConfigHandler.getRespMap("/test1", client);
 
     assertNotNull(TestBlobHandler.getAsString(map), map = (Map) map.get("error"));
     assertTrue(TestBlobHandler.getAsString(map), map.get("msg").toString().contains(".system collection not available"));
@@ -110,7 +110,7 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase {
     TestBlobHandler.createSystemCollection(getHttpSolrClient(baseURL, randomClient.getHttpClient()));
     waitForRecoveriesToFinish(".system", true);
 
-    map = TestSolrConfigHandler.getRespMap("/test1?wt=json", client);
+    map = TestSolrConfigHandler.getRespMap("/test1", client);
 
 
     assertNotNull(map = (Map) map.get("error"));
@@ -122,11 +122,11 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase {
         "             }\n" +
         "  }";
 
-    TestSolrConfigHandler.runConfigCommand(client,"/config/params?wt=json",payload);
+    TestSolrConfigHandler.runConfigCommand(client,"/config/params",payload);
     TestSolrConfigHandler.testForResponseElement(
         client,
         null,
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         Arrays.asList("response", "params", "watched", "x"),
         "X val",
@@ -136,7 +136,7 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase {
 
 
     for(int i=0;i<100;i++) {
-      map = TestSolrConfigHandler.getRespMap("/test1?wt=json", client);
+      map = TestSolrConfigHandler.getRespMap("/test1", client);
       if("X val".equals(map.get("x"))){
          success = true;
          break;
@@ -157,11 +157,11 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase {
         "'create-queryResponseWriter' : { 'name' : 'json1', 'class': 'org.apache.solr.core.RuntimeLibResponseWriter' , 'runtimeLib':true }" +
         "}";
     client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(client, "/config", payload);
 
     Map result = TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "requestHandler", "/runtime", "class"),
         "org.apache.solr.core.RuntimeLibReqHandler", 10);
@@ -170,7 +170,7 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase {
 
     result = TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/runtime?wt=json",
+        "/runtime",
         null,
         Arrays.asList("class"),
         "org.apache.solr.core.RuntimeLibReqHandler", 10);
@@ -198,10 +198,10 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase {
         "'update-runtimelib' : { 'name' : 'colltest' ,'version':2}\n" +
         "}";
     client = restTestHarnesses.get(random().nextInt(restTestHarnesses.size()));
-    TestSolrConfigHandler.runConfigCommand(client, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(client, "/config", payload);
     TestSolrConfigHandler.testForResponseElement(client,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "runtimeLib", blobName, "version"),
         2l, 10);
@@ -221,11 +221,11 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase {
         "             }\n" +
         "  }";
 
-    TestSolrConfigHandler.runConfigCommand(client,"/config/params?wt=json",payload);
+    TestSolrConfigHandler.runConfigCommand(client,"/config/params",payload);
     TestSolrConfigHandler.testForResponseElement(
         client,
         null,
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         Arrays.asList("response", "params", "watched", "x"),
         "X val",
@@ -233,7 +233,7 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase {
    result = TestSolrConfigHandler.testForResponseElement(
         client,
         null,
-        "/test1?wt=json",
+        "/test1",
         cloudClient,
         Arrays.asList("x"),
         "X val",
@@ -246,11 +246,11 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase {
         "             }\n" +
         "  }";
 
-    TestSolrConfigHandler.runConfigCommand(client,"/config/params?wt=json",payload);
+    TestSolrConfigHandler.runConfigCommand(client,"/config/params",payload);
     result = TestSolrConfigHandler.testForResponseElement(
         client,
         null,
-        "/test1?wt=json",
+        "/test1",
         cloudClient,
         Arrays.asList("x"),
         "X val changed",

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java b/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java
index bbad821..d2c9b80 100644
--- a/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java
+++ b/solr/core/src/test/org/apache/solr/core/TestSolrConfigHandler.java
@@ -106,7 +106,7 @@ public class TestSolrConfigHandler extends RestTestBase {
 
   public void testProperty() throws Exception {
     RestTestHarness harness = restTestHarness;
-    Map confMap = getRespMap("/config?wt=json", harness);
+    Map confMap = getRespMap("/config", harness);
     assertNotNull(getObjectByPath(confMap, false, Arrays.asList("config", "requestHandler", "/admin/luke")));
     assertNotNull(getObjectByPath(confMap, false, Arrays.asList("config", "requestHandler", "/admin/system")));
     assertNotNull(getObjectByPath(confMap, false, Arrays.asList("config", "requestHandler", "/admin/mbeans")));
@@ -120,20 +120,20 @@ public class TestSolrConfigHandler extends RestTestBase {
     String payload = "{\n" +
         " 'set-property' : { 'updateHandler.autoCommit.maxDocs':100, 'updateHandler.autoCommit.maxTime':10 , 'requestDispatcher.requestParsers.addHttpRequestToContext':true} \n" +
         " }";
-    runConfigCommand(harness, "/config?wt=json", payload);
+    runConfigCommand(harness, "/config", payload);
 
-    Map m = (Map) getRespMap("/config/overlay?wt=json", harness).get("overlay");
+    Map m = (Map) getRespMap("/config/overlay", harness).get("overlay");
     Map props = (Map) m.get("props");
     assertNotNull(props);
     assertEquals("100", String.valueOf(getObjectByPath(props, true, ImmutableList.of("updateHandler", "autoCommit", "maxDocs"))));
     assertEquals("10", String.valueOf(getObjectByPath(props, true, ImmutableList.of("updateHandler", "autoCommit", "maxTime"))));
 
-    m =  getRespMap("/config/updateHandler?wt=json", harness);
+    m =  getRespMap("/config/updateHandler", harness);
     assertNotNull(getObjectByPath(m, true, ImmutableList.of("config","updateHandler", "commitWithin", "softCommit")));
     assertNotNull(getObjectByPath(m, true, ImmutableList.of("config","updateHandler", "autoCommit", "maxDocs")));
     assertNotNull(getObjectByPath(m, true, ImmutableList.of("config","updateHandler", "autoCommit", "maxTime")));
 
-    m = (Map) getRespMap("/config?wt=json", harness).get("config");
+    m = (Map) getRespMap("/config", harness).get("config");
     assertNotNull(m);
 
     assertEquals("100", String.valueOf(getObjectByPath(m, true, ImmutableList.of("updateHandler", "autoCommit", "maxDocs"))));
@@ -142,9 +142,9 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         " 'unset-property' :  'updateHandler.autoCommit.maxDocs'} \n" +
         " }";
-    runConfigCommand(harness, "/config?wt=json", payload);
+    runConfigCommand(harness, "/config", payload);
 
-    m = (Map) getRespMap("/config/overlay?wt=json", harness).get("overlay");
+    m = (Map) getRespMap("/config/overlay", harness).get("overlay");
     props = (Map) m.get("props");
     assertNotNull(props);
     assertNull(getObjectByPath(props, true, ImmutableList.of("updateHandler", "autoCommit", "maxDocs")));
@@ -157,15 +157,15 @@ public class TestSolrConfigHandler extends RestTestBase {
         " 'set-user-property' : { 'my.custom.variable.a':'MODIFIEDA'," +
         " 'my.custom.variable.b':'MODIFIEDB' } \n" +
         " }";
-    runConfigCommand(harness, "/config?wt=json", payload);
+    runConfigCommand(harness, "/config", payload);
 
-    Map m = (Map) getRespMap("/config/overlay?wt=json", harness).get("overlay");
+    Map m = (Map) getRespMap("/config/overlay", harness).get("overlay");
     Map props = (Map) m.get("userProps");
     assertNotNull(props);
     assertEquals(props.get("my.custom.variable.a"), "MODIFIEDA");
     assertEquals(props.get("my.custom.variable.b"), "MODIFIEDB");
 
-    m = (Map) getRespMap("/dump?wt=json&json.nl=map&initArgs=true", harness).get("initArgs");
+    m = (Map) getRespMap("/dump?json.nl=map&initArgs=true", harness).get("initArgs");
 
     m = (Map) m.get(PluginInfo.DEFAULTS);
     assertEquals("MODIFIEDA", m.get("a"));
@@ -191,11 +191,11 @@ public class TestSolrConfigHandler extends RestTestBase {
     String payload = "{\n" +
         "'create-requesthandler' : { 'name' : '/x', 'class': 'org.apache.solr.handler.DumpRequestHandler' , 'startup' : 'lazy'}\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
 
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         cloudSolrClient,
         Arrays.asList("overlay", "requestHandler", "/x", "startup"),
         "lazy",
@@ -205,11 +205,11 @@ public class TestSolrConfigHandler extends RestTestBase {
         "'update-requesthandler' : { 'name' : '/x', 'class': 'org.apache.solr.handler.DumpRequestHandler' ,registerPath :'/solr,/v2', " +
         " 'startup' : 'lazy' , 'a':'b' , 'defaults': {'def_a':'def A val', 'multival':['a','b','c']}}\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
 
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         cloudSolrClient,
         Arrays.asList("overlay", "requestHandler", "/x", "a"),
         "b",
@@ -222,10 +222,10 @@ public class TestSolrConfigHandler extends RestTestBase {
         " 'defaults': {'a':'A','b':'B','c':'C'}}\n" +
         "}";
 
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         cloudSolrClient,
         Arrays.asList("overlay", "requestHandler", "/dump", "defaults", "c" ),
         "C",
@@ -233,7 +233,7 @@ public class TestSolrConfigHandler extends RestTestBase {
 
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/x?wt=json&getdefaults=true&json.nl=map",
+        "/x?getdefaults=true&json.nl=map",
         cloudSolrClient,
         Arrays.asList("getdefaults", "def_a"),
         "def A val",
@@ -241,7 +241,7 @@ public class TestSolrConfigHandler extends RestTestBase {
 
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/x?wt=json&param=multival&json.nl=map",
+        "/x?param=multival&json.nl=map",
         cloudSolrClient,
         Arrays.asList("params", "multival"),
         Arrays.asList("a", "b", "c"),
@@ -250,12 +250,12 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'delete-requesthandler' : '/x'" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     boolean success = false;
     long startTime = System.nanoTime();
     int maxTimeoutSeconds = 10;
     while (TimeUnit.SECONDS.convert(System.nanoTime() - startTime, TimeUnit.NANOSECONDS) < maxTimeoutSeconds) {
-      String uri = "/config/overlay?wt=json";
+      String uri = "/config/overlay";
       Map m = testServerBaseUrl == null ? getRespMap(uri, writeHarness) : TestSolrConfigHandlerConcurrent.getAsMap(testServerBaseUrl + uri, cloudSolrClient);
       if (null == Utils.getObjectByPath(m, true, Arrays.asList("overlay", "requestHandler", "/x", "a"))) {
         success = true;
@@ -269,10 +269,10 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'create-queryconverter' : { 'name' : 'qc', 'class': 'org.apache.solr.spelling.SpellingQueryConverter'}\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "queryConverter", "qc", "class"),
         "org.apache.solr.spelling.SpellingQueryConverter",
@@ -280,10 +280,10 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'update-queryconverter' : { 'name' : 'qc', 'class': 'org.apache.solr.spelling.SuggestQueryConverter'}\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "queryConverter", "qc", "class"),
         "org.apache.solr.spelling.SuggestQueryConverter",
@@ -292,10 +292,10 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'delete-queryconverter' : 'qc'" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "queryConverter", "qc"),
         null,
@@ -304,10 +304,10 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'create-searchcomponent' : { 'name' : 'tc', 'class': 'org.apache.solr.handler.component.TermsComponent'}\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "searchComponent", "tc", "class"),
         "org.apache.solr.handler.component.TermsComponent",
@@ -315,10 +315,10 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'update-searchcomponent' : { 'name' : 'tc', 'class': 'org.apache.solr.handler.component.TermVectorComponent' }\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "searchComponent", "tc", "class"),
         "org.apache.solr.handler.component.TermVectorComponent",
@@ -327,10 +327,10 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'delete-searchcomponent' : 'tc'" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "searchComponent", "tc"),
         null,
@@ -339,10 +339,10 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'create-valuesourceparser' : { 'name' : 'cu', 'class': 'org.apache.solr.core.CountUsageValueSourceParser'}\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "valueSourceParser", "cu", "class"),
         "org.apache.solr.core.CountUsageValueSourceParser",
@@ -353,10 +353,10 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'update-valuesourceparser' : { 'name' : 'cu', 'class': 'org.apache.solr.search.function.NvlValueSourceParser'}\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "valueSourceParser", "cu", "class"),
         "org.apache.solr.search.function.NvlValueSourceParser",
@@ -365,10 +365,10 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'delete-valuesourceparser' : 'cu'" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "valueSourceParser", "cu"),
         null,
@@ -379,10 +379,10 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'create-transformer' : { 'name' : 'mytrans', 'class': 'org.apache.solr.response.transform.ValueAugmenterFactory', 'value':'5'}\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "transformer", "mytrans", "class"),
         "org.apache.solr.response.transform.ValueAugmenterFactory",
@@ -391,10 +391,10 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'update-transformer' : { 'name' : 'mytrans', 'class': 'org.apache.solr.response.transform.ValueAugmenterFactory', 'value':'6'}\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "transformer", "mytrans", "value"),
         "6",
@@ -404,10 +404,10 @@ public class TestSolrConfigHandler extends RestTestBase {
         "'delete-transformer' : 'mytrans'," +
         "'create-initparams' : { 'name' : 'hello', 'key':'val'}\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     Map map = testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "transformer", "mytrans"),
         null,
@@ -431,10 +431,10 @@ public class TestSolrConfigHandler extends RestTestBase {
         "        }\n" +
         "    }\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     map = testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "searchComponent","myspellcheck", "spellchecker", "class"),
         "solr.DirectSolrSpellChecker",
@@ -449,16 +449,16 @@ public class TestSolrConfigHandler extends RestTestBase {
         "                    {name: s2,lookupImpl: FuzzyLookupFactory , dictionaryImpl : DocumentExpressionDictionaryFactory}]" +
         "    }\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
     map = testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config?wt=json",
+        "/config",
         cloudSolrClient,
         Arrays.asList("config", "requestHandler","/dump100", "class"),
         "org.apache.solr.handler.DumpRequestHandler",
         10);
 
-    map = getRespMap("/dump100?wt=json&json.nl=arrmap&initArgs=true", writeHarness);
+    map = getRespMap("/dump100?json.nl=arrmap&initArgs=true", writeHarness);
     List initArgs = (List) map.get("initArgs");
     assertNotNull(initArgs);
     assertTrue(initArgs.size() >= 2);
@@ -471,11 +471,11 @@ public class TestSolrConfigHandler extends RestTestBase {
         "    registerPath :'/solr,/v2'"+
         ", 'startup' : 'lazy'}\n" +
         "}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
 
     testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         cloudSolrClient,
         Arrays.asList("overlay", "requestHandler", "/dump101", "startup"),
         "lazy",
@@ -484,18 +484,18 @@ public class TestSolrConfigHandler extends RestTestBase {
     payload = "{\n" +
         "'add-cache' : {name:'lfuCacheDecayFalse', class:'solr.search.LFUCache', size:10 ,initialSize:9 , timeDecay:false }," +
         "'add-cache' : {name: 'perSegFilter', class: 'solr.search.LRUCache', size:10, initialSize:0 , autowarmCount:10}}";
-    runConfigCommand(writeHarness, "/config?wt=json", payload);
+    runConfigCommand(writeHarness, "/config", payload);
 
     map = testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         cloudSolrClient,
         Arrays.asList("overlay", "cache", "lfuCacheDecayFalse", "class"),
         "solr.search.LFUCache",
         10);
     assertEquals("solr.search.LRUCache",getObjectByPath(map, true, ImmutableList.of("overlay", "cache", "perSegFilter", "class")));
 
-    map = getRespMap("/dump101?cacheNames=lfuCacheDecayFalse&cacheNames=perSegFilter&wt=json", writeHarness);
+    map = getRespMap("/dump101?cacheNames=lfuCacheDecayFalse&cacheNames=perSegFilter", writeHarness);
     assertEquals("Actual output "+ Utils.toJSONString(map), "org.apache.solr.search.LRUCache",getObjectByPath(map, true, ImmutableList.of( "caches", "perSegFilter")));
     assertEquals("Actual output "+ Utils.toJSONString(map), "org.apache.solr.search.LFUCache",getObjectByPath(map, true, ImmutableList.of( "caches", "lfuCacheDecayFalse")));
 
@@ -569,12 +569,12 @@ public class TestSolrConfigHandler extends RestTestBase {
         "  }";
 
 
-    TestSolrConfigHandler.runConfigCommand(harness, "/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(harness, "/config/params", payload);
 
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/config/params?wt=json",
+        "/config/params",
         null,
         Arrays.asList("response", "params", "x", "a"),
         "A val",
@@ -583,7 +583,7 @@ public class TestSolrConfigHandler extends RestTestBase {
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/config/params?wt=json",
+        "/config/params",
         null,
         Arrays.asList("response", "params", "x", "b"),
         "B val",
@@ -593,12 +593,12 @@ public class TestSolrConfigHandler extends RestTestBase {
         "'create-requesthandler' : { 'name' : '/d', registerPath :'/solr,/v2' , 'class': 'org.apache.solr.handler.DumpRequestHandler' }\n" +
         "}";
 
-    TestSolrConfigHandler.runConfigCommand(harness, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(harness, "/config", payload);
 
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "requestHandler", "/d", "name"),
         "/d",
@@ -606,14 +606,14 @@ public class TestSolrConfigHandler extends RestTestBase {
 
     TestSolrConfigHandler.testForResponseElement(harness,
         null,
-        "/d?wt=json&useParams=x",
+        "/d?useParams=x",
         null,
         Arrays.asList("params", "a"),
         "A val",
         5);
     TestSolrConfigHandler.testForResponseElement(harness,
         null,
-        "/d?wt=json&useParams=x&a=fomrequest",
+        "/d?useParams=x&a=fomrequest",
         null,
         Arrays.asList("params", "a"),
         "fomrequest",
@@ -623,11 +623,11 @@ public class TestSolrConfigHandler extends RestTestBase {
         "'create-requesthandler' : { 'name' : '/dump1', registerPath :'/solr,/v2' , 'class': 'org.apache.solr.handler.DumpRequestHandler', 'useParams':'x' }\n" +
         "}";
 
-    TestSolrConfigHandler.runConfigCommand(harness, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(harness, "/config", payload);
 
     TestSolrConfigHandler.testForResponseElement(harness,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "requestHandler", "/dump1", "name"),
         "/dump1",
@@ -636,7 +636,7 @@ public class TestSolrConfigHandler extends RestTestBase {
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/dump1?wt=json",
+        "/dump1",
         null,
         Arrays.asList("params", "a"),
         "A val",
@@ -652,12 +652,12 @@ public class TestSolrConfigHandler extends RestTestBase {
         "  }";
 
 
-    TestSolrConfigHandler.runConfigCommand(harness, "/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(harness, "/config/params", payload);
 
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/config/params?wt=json",
+        "/config/params",
         null,
         Arrays.asList("response", "params", "y", "c"),
         "CY val",
@@ -665,7 +665,7 @@ public class TestSolrConfigHandler extends RestTestBase {
 
     TestSolrConfigHandler.testForResponseElement(harness,
         null,
-        "/dump1?wt=json&useParams=y",
+        "/dump1?useParams=y",
         null,
         Arrays.asList("params", "c"),
         "CY val",
@@ -675,7 +675,7 @@ public class TestSolrConfigHandler extends RestTestBase {
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/dump1?wt=json&useParams=y",
+        "/dump1?useParams=y",
         null,
         Arrays.asList("params", "b"),
         "BY val",
@@ -684,7 +684,7 @@ public class TestSolrConfigHandler extends RestTestBase {
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/dump1?wt=json&useParams=y",
+        "/dump1?useParams=y",
         null,
         Arrays.asList("params", "a"),
         "A val",
@@ -693,7 +693,7 @@ public class TestSolrConfigHandler extends RestTestBase {
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/dump1?wt=json&useParams=y",
+        "/dump1?useParams=y",
         null,
         Arrays.asList("params", "d"),
         Arrays.asList("val 1", "val 2"),
@@ -709,12 +709,12 @@ public class TestSolrConfigHandler extends RestTestBase {
         "  }";
 
 
-    TestSolrConfigHandler.runConfigCommand(harness, "/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(harness, "/config/params", payload);
 
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/config/params?wt=json",
+        "/config/params",
         null,
         Arrays.asList("response", "params", "y", "c"),
         "CY val modified",
@@ -723,7 +723,7 @@ public class TestSolrConfigHandler extends RestTestBase {
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/config/params?wt=json",
+        "/config/params",
         null,
         Arrays.asList("response", "params", "y", "e"),
         "EY val",
@@ -738,11 +738,11 @@ public class TestSolrConfigHandler extends RestTestBase {
         "  }";
 
 
-    TestSolrConfigHandler.runConfigCommand(harness, "/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(harness, "/config/params", payload);
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/config/params?wt=json",
+        "/config/params",
         null,
         Arrays.asList("response", "params", "y", "p"),
         "P val",
@@ -751,17 +751,17 @@ public class TestSolrConfigHandler extends RestTestBase {
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/config/params?wt=json",
+        "/config/params",
         null,
         Arrays.asList("response", "params", "y", "c"),
         null,
         10);
     payload = " {'delete' : 'y'}";
-    TestSolrConfigHandler.runConfigCommand(harness, "/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(harness, "/config/params", payload);
     TestSolrConfigHandler.testForResponseElement(
         harness,
         null,
-        "/config/params?wt=json",
+        "/config/params",
         null,
         Arrays.asList("response", "params", "y", "p"),
         null,
@@ -786,10 +786,10 @@ public class TestSolrConfigHandler extends RestTestBase {
         "  }\n" +
         "}";
 
-    TestSolrConfigHandler.runConfigCommand(harness, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(harness, "/config", payload);
     TestSolrConfigHandler.testForResponseElement(harness,
         null,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         null,
         Arrays.asList("overlay", "requestHandler", "aRequestHandler", "class"),
         "org.apache.solr.handler.DumpRequestHandler",

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/handler/CheckBackupStatus.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/handler/CheckBackupStatus.java b/solr/core/src/test/org/apache/solr/handler/CheckBackupStatus.java
index f84d89f..bd9b1eb 100644
--- a/solr/core/src/test/org/apache/solr/handler/CheckBackupStatus.java
+++ b/solr/core/src/test/org/apache/solr/handler/CheckBackupStatus.java
@@ -46,7 +46,7 @@ public class CheckBackupStatus extends SolrTestCaseJ4 {
   }
 
   public void fetchStatus() throws IOException {
-    String masterUrl = client.getBaseURL() + "/"  + coreName + ReplicationHandler.PATH + "?command=" + ReplicationHandler.CMD_DETAILS;
+    String masterUrl = client.getBaseURL() + "/"  + coreName + ReplicationHandler.PATH + "?wt=xml&command=" + ReplicationHandler.CMD_DETAILS;
     response = client.getHttpClient().execute(new HttpGet(masterUrl), new BasicResponseHandler());
     if(pException.matcher(response).find()) {
       fail("Failed to create backup");

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/handler/TestConfigReload.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/handler/TestConfigReload.java b/solr/core/src/test/org/apache/solr/handler/TestConfigReload.java
index 162584c..ab7a74d 100644
--- a/solr/core/src/test/org/apache/solr/handler/TestConfigReload.java
+++ b/solr/core/src/test/org/apache/solr/handler/TestConfigReload.java
@@ -121,7 +121,7 @@ public class TestConfigReload extends AbstractFullDistribZkTestBase {
     while ( TimeUnit.SECONDS.convert(System.nanoTime() - startTime, TimeUnit.NANOSECONDS) < maxTimeoutSeconds){
       Thread.sleep(50);
       for (String url : urls) {
-        Map respMap = getAsMap(url+uri+"?wt=json");
+        Map respMap = getAsMap(url+uri);
         if(String.valueOf(newVersion).equals(String.valueOf( getObjectByPath(respMap, true, asList(name, "znodeVersion"))))){
           succeeded.add(url);
         }

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/handler/TestReplicationHandlerBackup.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/handler/TestReplicationHandlerBackup.java b/solr/core/src/test/org/apache/solr/handler/TestReplicationHandlerBackup.java
index 0439775..a513606 100644
--- a/solr/core/src/test/org/apache/solr/handler/TestReplicationHandlerBackup.java
+++ b/solr/core/src/test/org/apache/solr/handler/TestReplicationHandlerBackup.java
@@ -267,7 +267,7 @@ public class TestReplicationHandlerBackup extends SolrJettyTestBase {
 
   public static void runBackupCommand(JettySolrRunner masterJetty, String cmd, String params) throws IOException {
     String masterUrl = buildUrl(masterJetty.getLocalPort(), context) + "/" + DEFAULT_TEST_CORENAME
-        + ReplicationHandler.PATH+"?command=" + cmd + params;
+        + ReplicationHandler.PATH+"?wt=xml&command=" + cmd + params;
     InputStream stream = null;
     try {
       URL url = new URL(masterUrl);
@@ -290,7 +290,7 @@ public class TestReplicationHandlerBackup extends SolrJettyTestBase {
     }
 
     public boolean fetchStatus() throws IOException {
-      String masterUrl = buildUrl(masterJetty.getLocalPort(), context) + "/" + DEFAULT_TEST_CORENAME + ReplicationHandler.PATH + "?command=" + ReplicationHandler.CMD_DETAILS;
+      String masterUrl = buildUrl(masterJetty.getLocalPort(), context) + "/" + DEFAULT_TEST_CORENAME + ReplicationHandler.PATH + "?wt=xml&command=" + ReplicationHandler.CMD_DETAILS;
       URL url;
       InputStream stream = null;
       try {

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/handler/TestReqParamsAPI.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/handler/TestReqParamsAPI.java b/solr/core/src/test/org/apache/solr/handler/TestReqParamsAPI.java
index db04486..7b7ebae 100644
--- a/solr/core/src/test/org/apache/solr/handler/TestReqParamsAPI.java
+++ b/solr/core/src/test/org/apache/solr/handler/TestReqParamsAPI.java
@@ -94,12 +94,12 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
         "'create-requesthandler' : { 'name' : '/dump0', 'class': 'org.apache.solr.handler.DumpRequestHandler' }\n" +
         "}";
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config", payload);
 
     payload = "{\n" +
         "'create-requesthandler' : { 'name' : '/dump1', 'class': 'org.apache.solr.handler.DumpRequestHandler', 'useParams':'x' }\n" +
         "}";
-    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config", payload);
 
     AbstractFullDistribZkTestBase.waitForRecoveriesToFinish(COLL_NAME, cloudClient.getZkStateReader(), false, true, 90);
 
@@ -110,11 +110,11 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
         "             }\n" +
         "  }";
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params", payload);
 
     Map result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         asList("response", "params", "x", "a"),
         "A val",
@@ -123,7 +123,7 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
 
     TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/config/overlay?wt=json",
+        "/config/overlay",
         cloudClient,
         asList("overlay", "requestHandler", "/dump0", "name"),
         "/dump0",
@@ -131,7 +131,7 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
 
     result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/dump0?wt=json&useParams=x",
+        "/dump0?useParams=x",
         cloudClient,
         asList("params", "a"),
         "A val",
@@ -140,7 +140,7 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
 
     TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/dump0?wt=json&useParams=x&a=fomrequest",
+        "/dump0?useParams=x&a=fomrequest",
         cloudClient,
         asList("params", "a"),
         "fomrequest",
@@ -148,7 +148,7 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
 
     result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/config/overlay?wt=json",
+        "/config/overlay",
         cloudClient,
         asList("overlay", "requestHandler", "/dump1", "name"),
         "/dump1",
@@ -156,7 +156,7 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
 
     result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/dump1?wt=json",
+        "/dump1",
         cloudClient,
         asList("params", "a"),
         "A val",
@@ -174,12 +174,12 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
         "  }";
 
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params", payload);
 
     result = TestSolrConfigHandler.testForResponseElement(
         null,
         urls.get(random().nextInt(urls.size())),
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         asList("response", "params", "y", "c"),
         "CY val",
@@ -190,7 +190,7 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
 
     result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/dump1?wt=json&useParams=y",
+        "/dump1?useParams=y",
         cloudClient,
         asList("params", "c"),
         "CY val",
@@ -202,7 +202,7 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
 
     result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/config/requestHandler?componentName=/dump1&expandParams=true&wt=json&useParams=y&c=CC",
+        "/config/requestHandler?componentName=/dump1&expandParams=true&useParams=y&c=CC",
         cloudClient,
         asList("config", "requestHandler","/dump1","_useParamsExpanded_","x", "a"),
         "A val",
@@ -224,12 +224,12 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
         "  }";
 
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params", payload);
 
     result = TestSolrConfigHandler.testForResponseElement(
         null,
         urls.get(random().nextInt(urls.size())),
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         asList("response", "params", "y", "c"),
         "CY val modified",
@@ -246,11 +246,11 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
         "  }";
 
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params", payload);
     result = TestSolrConfigHandler.testForResponseElement(
         null,
         urls.get(random().nextInt(urls.size())),
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         asList("response", "params", "y", "p"),
         "P val",
@@ -260,12 +260,12 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
     compareValues(result, 0l, asList("response", "params", "x", "","v"));
 
     payload = "{update :{x : {_appends_ :{ add : 'first' },  _invariants_ : {fixed: f }}}}";
-    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params", payload);
 
     result = TestSolrConfigHandler.testForResponseElement(
         null,
         urls.get(random().nextInt(urls.size())),
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         asList("response", "params", "x", "_appends_", "add"),
         "first",
@@ -275,7 +275,7 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
 
     result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/dump1?wt=json&fixed=changeit&add=second",
+        "/dump1?fixed=changeit&add=second",
         cloudClient,
         asList("params", "fixed"),
         "f",
@@ -289,11 +289,11 @@ public class TestReqParamsAPI extends SolrCloudTestCase {
     }, asList("params", "add"));
 
     payload = " {'delete' : 'y'}";
-    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config/params", payload);
     TestSolrConfigHandler.testForResponseElement(
         null,
         urls.get(random().nextInt(urls.size())),
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         asList("response", "params", "y", "p"),
         null,

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/handler/TestRestoreCore.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/handler/TestRestoreCore.java b/solr/core/src/test/org/apache/solr/handler/TestRestoreCore.java
index 2d1ac7f..6b5ebad 100644
--- a/solr/core/src/test/org/apache/solr/handler/TestRestoreCore.java
+++ b/solr/core/src/test/org/apache/solr/handler/TestRestoreCore.java
@@ -222,7 +222,7 @@ public class TestRestoreCore extends SolrJettyTestBase {
 
   public static boolean fetchRestoreStatus (String baseUrl, String coreName) throws IOException {
     String masterUrl = baseUrl + "/" + coreName +
-        ReplicationHandler.PATH + "?command=" + ReplicationHandler.CMD_RESTORE_STATUS;
+        ReplicationHandler.PATH + "?wt=xml&command=" + ReplicationHandler.CMD_RESTORE_STATUS;
     final Pattern pException = Pattern.compile("<str name=\"exception\">(.*?)</str>");
 
     InputStream stream = null;

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/handler/TestSQLHandler.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/handler/TestSQLHandler.java b/solr/core/src/test/org/apache/solr/handler/TestSQLHandler.java
index 78bdbe0..545a41a 100644
--- a/solr/core/src/test/org/apache/solr/handler/TestSQLHandler.java
+++ b/solr/core/src/test/org/apache/solr/handler/TestSQLHandler.java
@@ -2554,12 +2554,13 @@ public class TestSQLHandler extends AbstractFullDistribZkTestBase {
 
   public void assertResponseContains(SolrClient server, SolrParams requestParams, String json) throws IOException, SolrServerException {
     String p = requestParams.get("qt");
+    ModifiableSolrParams modifiableSolrParams = (ModifiableSolrParams) requestParams;
+    modifiableSolrParams.set("indent", modifiableSolrParams.get("indent", "off"));
     if(p != null) {
-      ModifiableSolrParams modifiableSolrParams = (ModifiableSolrParams) requestParams;
       modifiableSolrParams.remove("qt");
     }
 
-    QueryRequest query = new QueryRequest( requestParams );
+    QueryRequest query = new QueryRequest( modifiableSolrParams );
     query.setPath(p);
     query.setResponseParser(new InputStreamResponseParser("json"));
     query.setMethod(SolrRequest.METHOD.POST);

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerCloud.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerCloud.java b/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerCloud.java
index 0dbbe40..f143c02 100644
--- a/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerCloud.java
+++ b/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerCloud.java
@@ -76,12 +76,12 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
         "'create-requesthandler' : { 'name' : '/admin/luke', " +
         "'class': 'org.apache.solr.handler.DumpRequestHandler'}}";
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config", payload);
 
 
     TestSolrConfigHandler.testForResponseElement(writeHarness,
         testServerBaseUrl,
-        "/config/overlay?wt=json",
+        "/config/overlay",
         cloudClient,
         Arrays.asList("overlay", "requestHandler", "/admin/luke", "class"),
         "org.apache.solr.handler.DumpRequestHandler",
@@ -124,11 +124,11 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
         "  }";
 
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config/params", payload);
 
     Map result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         asList("response", "params", "x", "a"),
         "A val",
@@ -139,11 +139,11 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
         "'update-requesthandler' : { 'name' : '/dump', 'class': 'org.apache.solr.handler.DumpRequestHandler' }\n" +
         "}";
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness, "/config", payload);
 
     TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/config/overlay?wt=json",
+        "/config/overlay",
         cloudClient,
         asList("overlay", "requestHandler", "/dump", "name"),
         "/dump",
@@ -151,7 +151,7 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
 
     result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/dump?wt=json&useParams=x",
+        "/dump?useParams=x",
         cloudClient,
         asList("params", "a"),
         "A val",
@@ -160,7 +160,7 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
 
     TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/dump?wt=json&useParams=x&a=fomrequest",
+        "/dump?useParams=x&a=fomrequest",
         cloudClient,
         asList("params", "a"),
         "fomrequest",
@@ -170,11 +170,11 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
         "'create-requesthandler' : { 'name' : '/dump1', 'class': 'org.apache.solr.handler.DumpRequestHandler', 'useParams':'x' }\n" +
         "}";
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config", payload);
 
     result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/config/overlay?wt=json",
+        "/config/overlay",
         cloudClient,
         asList("overlay", "requestHandler", "/dump1", "name"),
         "/dump1",
@@ -182,7 +182,7 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
 
     result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/dump1?wt=json",
+        "/dump1",
         cloudClient,
         asList("params", "a"),
         "A val",
@@ -201,12 +201,12 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
         "  }";
 
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config/params", payload);
 
    result =  TestSolrConfigHandler.testForResponseElement(
         null,
         urls.get(random().nextInt(urls.size())),
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         asList("response", "params", "y", "c"),
         "CY val",
@@ -216,7 +216,7 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
 
     result = TestSolrConfigHandler.testForResponseElement(null,
         urls.get(random().nextInt(urls.size())),
-        "/dump?wt=json&useParams=y",
+        "/dump?useParams=y",
         cloudClient,
         asList("params", "c"),
         "CY val",
@@ -235,12 +235,12 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
         "  }";
 
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config/params", payload);
 
     result = TestSolrConfigHandler.testForResponseElement(
         null,
         urls.get(random().nextInt(urls.size())),
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         asList("response", "params", "y", "c"),
         "CY val modified",
@@ -257,11 +257,11 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
         "  }";
 
 
-    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config/params", payload);
     result = TestSolrConfigHandler.testForResponseElement(
         null,
         urls.get(random().nextInt(urls.size())),
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         asList("response", "params", "y", "p"),
         "P val",
@@ -269,11 +269,11 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
     compareValues(result, null, asList("response", "params", "y", "c"));
 
     payload = " {'delete' : 'y'}";
-    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config/params?wt=json", payload);
+    TestSolrConfigHandler.runConfigCommand(writeHarness,"/config/params", payload);
     TestSolrConfigHandler.testForResponseElement(
         null,
         urls.get(random().nextInt(urls.size())),
-        "/config/params?wt=json",
+        "/config/params",
         cloudClient,
         asList("response", "params", "y", "p"),
         null,

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerConcurrent.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerConcurrent.java b/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerConcurrent.java
index 3fdf78a..d077c84 100644
--- a/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerConcurrent.java
+++ b/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerConcurrent.java
@@ -143,7 +143,7 @@ public class TestSolrConfigHandlerConcurrent extends AbstractFullDistribZkTestBa
         val3 = String.valueOf(10 * i + 3);
         payload = payload.replace("CACHEVAL3", val3);
   
-        response = publisher.post("/config?wt=json", SolrTestCaseJ4.json(payload));
+        response = publisher.post("/config", SolrTestCaseJ4.json(payload));
       } finally {
         publisher.close();
       }
@@ -171,7 +171,7 @@ public class TestSolrConfigHandlerConcurrent extends AbstractFullDistribZkTestBa
       while ( TimeUnit.SECONDS.convert(System.nanoTime() - startTime, TimeUnit.NANOSECONDS) < maxTimeoutSeconds) {
         Thread.sleep(100);
         errmessages.clear();
-        Map respMap = getAsMap(url+"/config/overlay?wt=json", cloudClient);
+        Map respMap = getAsMap(url+"/config/overlay", cloudClient);
         Map m = (Map) respMap.get("overlay");
         if(m!= null) m = (Map) m.get("props");
         if(m == null) {

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/response/JSONWriterTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/response/JSONWriterTest.java b/solr/core/src/test/org/apache/solr/response/JSONWriterTest.java
index 45ca708..1b53150 100644
--- a/solr/core/src/test/org/apache/solr/response/JSONWriterTest.java
+++ b/solr/core/src/test/org/apache/solr/response/JSONWriterTest.java
@@ -51,7 +51,7 @@ public class JSONWriterTest extends SolrTestCaseJ4 {
   
   @Test
   public void testTypes() throws IOException {
-    SolrQueryRequest req = req("dummy");
+    SolrQueryRequest req = req("q", "dummy", "indent","off");
     SolrQueryResponse rsp = new SolrQueryResponse();
     QueryResponseWriter w = new PythonResponseWriter();
 
@@ -90,7 +90,7 @@ public class JSONWriterTest extends SolrTestCaseJ4 {
   }
 
   private void implTestJSON(final String namedListStyle) throws IOException {
-    SolrQueryRequest req = req("wt","json","json.nl",namedListStyle);
+    SolrQueryRequest req = req("wt","json","json.nl",namedListStyle, "indent", "off");
     SolrQueryResponse rsp = new SolrQueryResponse();
     JSONResponseWriter w = new JSONResponseWriter();
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6a59253e/solr/core/src/test/org/apache/solr/response/TestRawResponseWriter.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/response/TestRawResponseWriter.java b/solr/core/src/test/org/apache/solr/response/TestRawResponseWriter.java
index 0f95f79..7995efa 100644
--- a/solr/core/src/test/org/apache/solr/response/TestRawResponseWriter.java
+++ b/solr/core/src/test/org/apache/solr/response/TestRawResponseWriter.java
@@ -138,7 +138,12 @@ public class TestRawResponseWriter extends SolrTestCaseJ4 {
     // check response against each writer
 
     // xml & none (default behavior same as XML)
-    String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<response>\n<str name=\"content\">test</str><str name=\"foo\">bar</str>\n</response>\n";
+    String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
+        "<response>\n" +
+        "\n" +
+        "<str name=\"content\">test</str>\n" +
+        "<str name=\"foo\">bar</str>\n" +
+        "</response>\n";
     StringWriter xmlSout = new StringWriter();
     writerXmlBase.write(xmlSout, req(), rsp);
     assertEquals(xml, xmlSout.toString());
@@ -154,7 +159,9 @@ public class TestRawResponseWriter extends SolrTestCaseJ4 {
     assertEquals(xml, noneBout.toString(StandardCharsets.UTF_8.toString()));
 
     // json
-    String json = "{\"content\":\"test\",\"foo\":\"bar\"}\n";
+    String json = "{\n" +
+        "  \"content\":\"test\",\n" +
+        "  \"foo\":\"bar\"}\n";
     StringWriter jsonSout = new StringWriter();
     writerJsonBase.write(jsonSout, req(), rsp);
     assertEquals(json, jsonSout.toString());