algolia / algolia/algoliasearch-client-java
AlgoliaException: Error while deserialization the response
- 主要语言
- Java
- 星标
- 52
- 派生
- 33
- PR 合并指标
- 30 天内没有已合并 PR
描述
- Algolia Client Version: 2.17.3
- Language Version: Kotlin 1.2.51
### Description
```
com.algolia.search.exceptions.AlgoliaException: Error while deserialization the response
at com.algolia.search.http.AlgoliaHttpClient.requestWithRetry(AlgoliaHttpClient.java:173)
at com.algolia.search.APIClient.addObject(APIClient.java:698)
at com.algolia.search.SyncObjects.addObject(SyncObjects.java:34)
at com.algolia.search.SyncObjects.addObject(SyncObjects.java:22)
at eu.newsapp.backend.algolia.AlgoliaKt.publishToAlgolia(algolia.kt:61)
at eu.newsapp.backend.daemon.DaemonKt.execDaemon(daemon.kt:167)
at eu.newsapp.backend.daemon.DaemonKt.access$execDaemon(daemon.kt:1)
at eu.newsapp.backend.daemon.DaemonKt$startDaemon$$inlined$fixedRateTimer$1.run(Timer.kt:151)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "position" (class com.algolia.search.responses.AlgoliaError), not marked as ignorable (one known property: "message"])
at [Source: (InputStreamReader); line: 1, column: 121] (through reference chain: com.algolia.search.responses.AlgoliaError["position"])
at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:61)
at com.fasterxml.jackson.databind.DeserializationContext.handleUnknownProperty(DeserializationContext.java:822)
at com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:1152)
at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1582)
at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownVanilla(BeanDeserializerBase.java:1560)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:294)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:151)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4001)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3051)
at com.algolia.search.Utils.parseAs(Utils.java:54)
at com.algolia.search.http.AlgoliaHttpClient.requestWithRetry(AlgoliaHttpClient.java:150)
... 9 more
```
### Steps To Reproduce
Use this code:
https://gerogit.eu/eunify/backend/blob/master/src/eu/newsapp/backend/algolia/algolia.kt#L61-79
贡献指南
这个仓库没有索引到贡献指南
调研方向
从 AlgoliaHttpClient.java 和通过 Utils.parseAs 引用的 AlgoliaError 反序列化路径开始,然后跟踪 APIClient.java 中的 addObject 调用。复现 issue 中描述的响应,并验证包含 position 字段的错误能够在不发生反序列化失败的情况下得到处理。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java, kotlin
- 领域
- api
- Issue 类型
- 缺陷
- 难度
- 2/5
- 预计耗时
- 1-3 小时
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 35/100