Thanks for letting us know about the source of the problem.

--
Steve
www.lucidworks.com

> On Aug 27, 2018, at 3:15 PM, yx zhou <zhouyua...@gmail.com> wrote:
> 
> i found the root cause, it is my setting
> 
>        <exclusion>
>            <groupId>org.noggit</groupId>
>            <artifactId>noggit</artifactId>
>        </exclusion>
> 
> It's has duplicate (version conflict) in my dependency.
> 
> 
> On Mon, Aug 27, 2018 at 11:22 AM yx zhou <zhouyua...@gmail.com> wrote:
> 
>> Hi Steve
>> 
>>    Thank your reply.
>>    My solr server is from
>> http://archive.apache.org/dist/lucene/solr/7.0.1/,   and my SolrJ client
>> is
>> 
>> <dependency>
>>    <groupId>org.apache.solr</groupId>
>>    <artifactId>solr-solrj</artifactId>
>>    <version>7.0.1</version>
>>    <exclusions>
>>        <!-- Use jcl-over-slf4j from gremlin-core -->
>>        <exclusion>
>>            <groupId>org.slf4j</groupId>
>>            <artifactId>jcl-over-slf4j</artifactId>
>>        </exclusion>
>>        <!-- Use noggit from janusgraph-core -->
>>        <exclusion>
>>            <groupId>org.noggit</groupId>
>>            <artifactId>noggit</artifactId>
>>        </exclusion>
>>    </exclusions>
>> </dependency>
>> 
>> 
>> Thanks
>> 
>> 
>> On Fri, Aug 24, 2018 at 4:50 PM Steve Rowe <sar...@gmail.com> wrote:
>> 
>>> Hi,
>>> 
>>> SchemaRequestJSONWriter class was removed in SOLR-12455[1], but this
>>> change has not been released yet (will be released with Solr 7.5).  I’m
>>> guessing you’re using code built against branch_7x or master?  If so, then
>>> one solution is to build against the released source for any 7.x version.
>>> 
>>> [1] https://issues.apache.org/jira/browse/SOLR-12455
>>> 
>>> --
>>> Steve
>>> www.lucidworks.com
>>> 
>>>> On Aug 24, 2018, at 6:47 PM, yx zhou <zhouyua...@gmail.com> wrote:
>>>> 
>>>> Got the following errow when i try to delete a field with Schema API,
>>> on
>>>> Solr 7.0.1,  cloud model
>>>> 
>>>> java.lang.NoSuchMethodError:
>>>> 
>>> org.apache.solr.client.solrj.request.schema.SchemaRequest$SchemaRequestJSONWriter.writeString(Ljava/lang/String;)V
>>>> 
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.request.schema.SchemaRequest$SchemaRequestJSONWriter.write(SchemaRequest.java:824)
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.request.schema.SchemaRequest$Update.getContentStreams(SchemaRequest.java:711)
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.request.RequestWriter.getContentStreams(RequestWriter.java:51)
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.impl.BinaryRequestWriter.getContentStreams(BinaryRequestWriter.java:53)
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.impl.HttpSolrClient.createMethod(HttpSolrClient.java:330)
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:251)
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:242)
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.impl.LBHttpSolrClient.doRequest(LBHttpSolrClient.java:483)
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.impl.LBHttpSolrClient.request(LBHttpSolrClient.java:413)
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.impl.CloudSolrClient.sendRequest(CloudSolrClient.java:1121)
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.impl.CloudSolrClient.requestWithRetryOnStaleState(CloudSolrClient.java:862)
>>>> at
>>>> 
>>> org.apache.solr.client.solrj.impl.CloudSolrClient.request(CloudSolrClient.java:793)
>>>> at
>>> org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:178)
>>>> at
>>> org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:195)
>>>> at
>>> org.janusgraph.diskstorage.solr.SolrUtil.deleteField(SolrUtil.java:286)
>>>> at
>>> org.janusgraph.diskstorage.solr.SolrUtil.fieldsSync(SolrUtil.java:249)
>>>> 
>>>> My code is
>>>> 
>>>> public static void deleteField(CloudSolrClient client, String
>>>> collection, String fieldName)
>>>>   throws IOException, SolrServerException {
>>>>   SchemaRequest.DeleteField deleteFieldRequest = new
>>>> SchemaRequest.DeleteField(fieldName);
>>>> 
>>>>   client.setDefaultCollection(collection);
>>>>   SchemaResponse.UpdateResponse deleteFieldResponse =
>>>> deleteFieldRequest.process(client);
>>>> }
>>> 
>>> 

Reply via email to