[
https://issues.apache.org/jira/browse/SOLR-17044?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17852079#comment-17852079
]
ASF subversion and git services commented on SOLR-17044:
--------------------------------------------------------
Commit 92edc11dbcf0becc2cd571f078982c78470f15c7 in solr's branch
refs/heads/branch_9x from Jason Gerlowski
[ https://gitbox.apache.org/repos/asf?p=solr.git;h=92edc11dbcf ]
SOLR-17044: Consolidate SolrJ URL-building logic (#2455)
Prior to this commit, SolrJ had near-duplicate logic for building
request paths in two different places: HttpSolrClient and
HttpSolrClientBase (used by the JDK and Jetty HSC's).
This commit consolidates the path-building logic for all of SolrJ, so
that it can live in only one place.
> Improve API path specifying in SolrJ
> ------------------------------------
>
> Key: SOLR-17044
> URL: https://issues.apache.org/jira/browse/SOLR-17044
> Project: Solr
> Issue Type: Improvement
> Components: SolrJ, v2 API
> Reporter: Jason Gerlowski
> Assignee: Jason Gerlowski
> Priority: Major
> Time Spent: 2.5h
> Remaining Estimate: 0h
>
> Currently, URL-driven SolrClients receive a URL that typically ends in
> "/solr". Requiring users to specify this context-root in their URLs has made
> sense historically, since all v1 paths start with "/solr". But this has
> become limiting as Solr's v2 APIs (which use the "/api" context root) become
> more mature.
> SolrJ has some string manipulation in a few spots to try to accomodate this,
> but it's patchy and relatively brittle (relying on overly specific
> 'instanceof' checks, etc.). We should come up with a more reliable way to
> ensure that SolrClient's can make both v1 and v2 requests.
> Here's one idea for how we could approach this:
> # Create a new SolrRequest method to specify the initial path segment (i.e.
> /solr vs /api) on a per-request basis. We could either do this directly
> (e.g. "getRootPath()"), or indirectly (e.g. "isV2()").
> # Modify SolrClients to consider both the new method and the existing
> "getPath" when sending requests.
> # Add logic to SolrJ to strip "/solr" from any provided base URLs, and
> document that SolrClient URLs no longer require the "/solr" context-root
> suffix.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]