[QUESTION] toJsonString() with Java 8 time module
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 25/100
Direzione di ricerca
Parti da SearchRequest.toJsonString() e dalla configurazione di JacksonJsonpMapper mostrata nell’issue, quindi traccia quale mapper serializza i valori JsonData. Riproduci l’esempio di range query con OffsetDateTime e confronta il mapper utilizzato per la serializzazione della request con l’ObjectMapper configurato; il lavoro è completato quando viene identificato un percorso di serializzazione supportato oppure viene documentata la configurazione necessaria.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Hi,
I don't seem to be able to serialise SearchRequest(for example) if i am using OffsetDateTime in my range query.
For example:
OffsetDateTime from, OffsetDateTime to;
BoolQuery.Builder bool = QueryBuilders.bool();
bool.filter(QueryBuilders.range().field("ts").from(JsonData.of(from)).to(JsonData.of(to)).build().toQuery());
SearchRequest searchRequest = new SearchRequest.Builder()
.size(10000)
.query(bool.build().toQuery())
.index(Arrays.stream(indices).toList()).build();
System.out.println(searchRequest.toJsonString());// This is where the error is
The error is
jakarta.json.JsonException: Cannot find a serializer for type java.time.OffsetDateTime. Consider using a full-featured JsonpMapper.
This is how i init my Opensearch client and setting the mapper which has the timeModule
private OpenSearchClient getClientInternal() {
final HttpHost host = new HttpHost("https",hostname);
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(new AuthScope(host), new UsernamePasswordCredentials(username, password.toCharArray()));
JsonpMapper mapper = new JacksonJsonpMapper(jacksonObjectMapper);
var transport = ApacheHttpClient5TransportBuilder.builder(host)
.setMapper(mapper) //**Set the mapper here which has the timeModule**
.setHttpClientConfigCallback(httpClientBuilder -> httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider)
)
.build();
return new OpenSearchClient(transport);
}
My ObjectMapper config
@Bean
public ObjectMapper jacksonObjectMapper() {
ObjectMapper mapper = new ObjectMapper();
mapper.registerModule(new JavaTimeModule());
mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
System.out.println("Auto-configured Jackson ObjectMapper bean created. "+ mapper.hashCode());
return mapper;
}
I don't see anything wrong, but i still get the error.
Any ideas ?
- Lingua principale
- Java
- Stelle
- 165
- Fork
- 256
- Merge medio
- 1g 6h
- PR unite (30g)
- 37
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di opensearch-project/opensearch-java
-
enhancement untriaged
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
opensearch-project/opensearch-java#2188 ·
I maintainer di solito rispondono entro 1 giorno
-
[BUG] "shape" should not be required in GeoShapeQueryFieldForse di nuovo libera @lsh1215 l’ha presa 120 giorni fa e non c’è nessuna pull request aperta. Apertabug untriaged
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
opensearch-project/opensearch-java#2011 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
untriaged
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
opensearch-project/opensearch-java#2008 ·
I maintainer di solito rispondono entro 1 giorno
-
[BUG] ISM types lastUpdatedTime is susceptible to int overflowForse già presa @gingeekrishna l’ha presa 115 giorni fa. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
opensearch-project/opensearch-java#1898 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement untriaged
Difficoltà 4/5 3-5 giorni Idoneità per principianti 64/100
opensearch-project/opensearch-java#2195 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di opensearch-project/opensearch-java
Issue simili
-
priority: medium Review effort [1-5]: 3 status: needs-triage type: bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
carlos-emr/carlos#5431 ·
I maintainer di solito rispondono entro 1 giorno
-
Integration tests: jetty:run fails with WELD-001408 for CountryJpaServiceForse già presa @viniciusmachak l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
primefaces/primefaces#15431 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 80/100
OpenAPITools/openapi-generator#25454 ·
I maintainer di solito rispondono entro 1 giorno
-
Component - Build
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100