-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Closed
Description
The old low-level client is optional, but ElasticsearchExceptionTranslator
still has a hard dependency on its org.elasticsearch.client.ResponseException
. This results in a failure at runtime:
Caused by: java.lang.NoClassDefFoundError: org/elasticsearch/client/ResponseException
at org.springframework.data.elasticsearch.client.elc.ElasticsearchExceptionTranslator.checkForConflictException(ElasticsearchExceptionTranslator.java:121)
at org.springframework.data.elasticsearch.client.elc.ElasticsearchExceptionTranslator.translateExceptionIfPossible(ElasticsearchExceptionTranslator.java:73)
at org.springframework.data.elasticsearch.client.elc.ElasticsearchExceptionTranslator.translateException(ElasticsearchExceptionTranslator.java:65)
at org.springframework.data.elasticsearch.client.elc.ChildTemplate.execute(ChildTemplate.java:73)
at org.springframework.data.elasticsearch.client.elc.IndicesTemplate.doExists(IndicesTemplate.java:179)
at org.springframework.data.elasticsearch.client.elc.IndicesTemplate.exists(IndicesTemplate.java:171)
at org.springframework.data.elasticsearch.repository.support.SimpleElasticsearchRepository.createIndexAndMappingIfNeeded(SimpleElasticsearchRepository.java:93)
at org.springframework.data.elasticsearch.repository.support.SimpleElasticsearchRepository.<init>(SimpleElasticsearchRepository.java:87)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:209)
... 113 common frames omitted
Caused by: java.lang.ClassNotFoundException: org.elasticsearch.client.ResponseException
... 127 common frames omitted
I should be able to work around this by temporarily reinstating a dependency on the old client. Longer term, could you please update ElasticsearchExceptionTranslator
to only consider translation of org.elasticsearch.client.ResponseException
when it's on the classpath.
Metadata
Metadata
Assignees
Labels
type: bugA general bugA general bug