[
https://issues.apache.org/jira/browse/SOLR-9496?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15524356#comment-15524356
]
Kevin Risden commented on SOLR-9496:
------------------------------------
[~ichattopadhyaya] / [~noble.paul] - Saw you added a dependency in SOLR-9542. I
noticed this issue with missing base64. Any issues with adding commons-codec as
a dependency to solrj? Is there a better way?
> SolrJ + Kerberos Requires commons-codec
> ---------------------------------------
>
> Key: SOLR-9496
> URL: https://issues.apache.org/jira/browse/SOLR-9496
> Project: Solr
> Issue Type: Bug
> Security Level: Public(Default Security Level. Issues are Public)
> Components: SolrJ
> Affects Versions: 6.2
> Reporter: Bryan Bende
> Priority: Minor
>
> When using SolrJ 6.2 with Kerberos enabled on the server (also 6.2), the
> following exception was encountered:
> {code}
> java.lang.NoClassDefFoundError: org/apache/commons/codec/binary/Base64
> at
> org.apache.http.impl.auth.GGSSchemeBase.<init>(GGSSchemeBase.java:85)
> ~[httpclient-4.4.1.jar:4.4.1]
> at org.apache.http.impl.auth.SPNegoScheme.<init>(SPNegoScheme.java:54)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.impl.auth.SPNegoSchemeFactory.newInstance(SPNegoSchemeFactory.java:78)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.auth.AuthSchemeRegistry.getAuthScheme(AuthSchemeRegistry.java:113)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.auth.AuthSchemeRegistry$1.create(AuthSchemeRegistry.java:151)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.impl.client.AuthenticationStrategyImpl.select(AuthenticationStrategyImpl.java:188)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.impl.client.TargetAuthenticationStrategy.select(TargetAuthenticationStrategy.java:43)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.impl.auth.HttpAuthenticator.handleAuthChallenge(HttpAuthenticator.java:154)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.impl.client.HttpAuthenticator.authenticate(HttpAuthenticator.java:58)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.impl.client.DefaultRequestDirector.handleResponse(DefaultRequestDirector.java:1057)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:515)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:882)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55)
> ~[httpclient-4.4.1.jar:4.4.1]
> at
> org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(HttpSolrClient.java:497)
> ~[na:na]
> at
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:261)
> ~[na:na]
> at
> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:250)
> ~[na:na]
> at
> org.apache.solr.client.solrj.impl.LBHttpSolrClient.doRequest(LBHttpSolrClient.java:403)
> ~[na:na]
> at
> org.apache.solr.client.solrj.impl.LBHttpSolrClient.request(LBHttpSolrClient.java:355)
> ~[na:na]
> at
> org.apache.solr.client.solrj.impl.CloudSolrClient.sendRequest(CloudSolrClient.java:1291)
> ~[na:na]
> at
> org.apache.solr.client.solrj.impl.CloudSolrClient.requestWithRetryOnStaleState(CloudSolrClient.java:1061)
> ~[na:na]
> at
> org.apache.solr.client.solrj.impl.CloudSolrClient.request(CloudSolrClient.java:997)
> ~[na:na]
> at
> org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:149)
> ~[na:na]
> at
> org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:166)
> ~[na:na]
> {code}
> Adding a dependency to my project on commons-codec resolved the issue:
> {code}
> <dependency>
> <groupId>commons-codec</groupId>
> <artifactId>commons-codec</artifactId>
> <version>1.10</version>
> </dependency>
> {code}
> SolrJ should include this dependency if it is required for Kerberos
> authentication.
> If not we should consider updating the SolrJ section on the Wiki page here to
> mention that client application needs to add it:
> https://cwiki.apache.org/confluence/display/solr/Kerberos+Authentication+Plugin
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]