diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/HttpJdkSolrClient.java b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/HttpJdkSolrClient.java index e3c40118d62..8fe0697878b 100644 --- a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/HttpJdkSolrClient.java +++ b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/HttpJdkSolrClient.java @@ -302,7 +302,9 @@ private PreparedRequest preparePutOrPost( ModifiableSolrParams requestParams = queryParams; queryParams = calculateQueryParams(urlParamNames, requestParams); queryParams.add(calculateQueryParams(solrRequest.getQueryParams(), requestParams)); - bodyPublisher = HttpRequest.BodyPublishers.ofString(requestParams.toString()); + // note the toQueryString() method adds a leading question mark which needs to be removed here + bodyPublisher = + HttpRequest.BodyPublishers.ofString(requestParams.toQueryString().substring(1)); } else { bodyPublisher = HttpRequest.BodyPublishers.noBody(); }