Skip to content

When i try to query the data from influxdb using queryApi.query(flux), i am getting exceptions #338

@anil123lalam

Description

@anil123lalam

package com.unitedrentals.dto;

import java.time.Instant;

import com.influxdb.annotations.Column;
import com.influxdb.annotations.Measurement;

@measurement(name = "series")
public class InfluxSeriesDto {
@column
String shardId;
@column
String equipmentId;
@column
String datatimestamp;
@column
String tagname;
@column
String uom;
@column
String datavalue;
@column(timestamp = true)
Instant time;

public String getShardId() {
	return shardId;
}

public void setShardId(String shardId) {
	this.shardId = shardId;
}

public String getEquipmentId() {
	return equipmentId;
}

public void setEquipmentId(String equipmentId) {
	this.equipmentId = equipmentId;
}

public String getDatatimestamp() {
	return datatimestamp;
}

public void setDatatimestamp(String datatimestamp) {
	this.datatimestamp = datatimestamp;
}

public String getTagname() {
	return tagname;
}

public void setTagname(String tagname) {
	this.tagname = tagname;
}

public String getUom() {
	return uom;
}

public void setUom(String uom) {
	this.uom = uom;
}

public String getDatavalue() {
	return datavalue;
}

public void setDatavalue(String datavalue) {
	this.datavalue = datavalue;
}

public Instant getTime() {
	return time;
}

public void setTime(Instant time) {
	this.time = time;
}

}

public class InfluxDBClientSample {

private static String bucket = "unitedrentals";
private static String org = "unitedrentals";
private static String token = "85pZyGiyloQRyXpaEypv4ErrHMKveOkGfle2JXRFBPU9Uh7rI8uvKkyLPGumq_TUO_gZhTWZ6O5hRnCf3HEA1w==";

public static void main(String[] args) throws Exception {
	// TODO Auto-generated method stub

	InfluxDBClientOptions build = InfluxDBClientOptions.builder().bucket(bucket).org(org)
			.url("http://localhost:8086").authenticateToken(token.toCharArray()).build();

	InfluxDBClient client = InfluxDBClientFactory.create(build);

	System.out.println("*** Query Points ***");
	String flux = "from(bucket:\"unitedrentals\") |> range(start: 0) |> filter(fn: (r) => r._measurement == \"series\")";

	// client.getDeleteApi().delete(OffsetDateTime.of(2022,04,19,0,0,0,0,ZoneOffset.UTC),
	// OffsetDateTime.now(),"_measurement=\"series\"",
	// "unitedrentals","unitedrentals");
	List<InfluxSeriesDto> list = client.getQueryApi().query(flux, InfluxSeriesDto.class);
	client.close();
}

}

Steps to reproduce:
List the minimal actions needed to reproduce the behavior.

  1. After executing the above program , i am getting below exceptions

Exception in thread "main" java.lang.IllegalArgumentException: Unable to create @Body converter for class com.influxdb.client.domain.Query (parameter #6)
for method QueryService.postQueryResponseBody
at retrofit2.Utils.methodError(Utils.java:54)
at retrofit2.Utils.parameterError(Utils.java:60)
at retrofit2.RequestFactory$Builder.parseParameterAnnotation(RequestFactory.java:781)
at retrofit2.RequestFactory$Builder.parseParameter(RequestFactory.java:325)
at retrofit2.RequestFactory$Builder.build(RequestFactory.java:206)
at retrofit2.RequestFactory.parseAnnotations(RequestFactory.java:67)
at retrofit2.ServiceMethod.parseAnnotations(ServiceMethod.java:26)
at retrofit2.Retrofit.loadServiceMethod(Retrofit.java:202)
at retrofit2.Retrofit$1.invoke(Retrofit.java:160)
at com.sun.proxy.$Proxy4.postQueryResponseBody(Unknown Source)
at com.influxdb.client.internal.QueryApiImpl.query(QueryApiImpl.java:933)
at com.influxdb.client.internal.QueryApiImpl.query(QueryApiImpl.java:123)
at com.influxdb.client.internal.QueryApiImpl.query(QueryApiImpl.java:85)
at com.influxdb.client.internal.QueryApiImpl.query(QueryApiImpl.java:75)
at com.influxdb.InfluxDBClientSample.main(InfluxDBClientSample.java:49)
Caused by: java.lang.IllegalArgumentException: @JsonAdapter value must be TypeAdapter or TypeAdapterFactory reference.
at com.google.gson.internal.bind.JsonAdapterAnnotationTypeAdapterFactory.getTypeAdapter(JsonAdapterAnnotationTypeAdapterFactory.java:65)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getFieldAdapter(ReflectiveTypeAdapterFactory.java:133)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.access$100(ReflectiveTypeAdapterFactory.java:49)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.(ReflectiveTypeAdapterFactory.java:106)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.createBoundField(ReflectiveTypeAdapterFactory.java:105)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:161)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java:97)
at com.google.gson.Gson.getDelegateAdapter(Gson.java:489)
at io.gsonfire.gson.WrapTypeAdapterFactory.create(WrapTypeAdapterFactory.java:26)
at com.google.gson.Gson.getAdapter(Gson.java:407)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getFieldAdapter(ReflectiveTypeAdapterFactory.java:136)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.access$100(ReflectiveTypeAdapterFactory.java:49)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.(ReflectiveTypeAdapterFactory.java:106)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.createBoundField(ReflectiveTypeAdapterFactory.java:105)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:161)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java:97)
at com.google.gson.Gson.getDelegateAdapter(Gson.java:489)
at io.gsonfire.gson.WrapTypeAdapterFactory.create(WrapTypeAdapterFactory.java:26)
at com.google.gson.Gson.getAdapter(Gson.java:407)
at retrofit2.converter.gson.GsonConverterFactory.requestBodyConverter(GsonConverterFactory.java:74)
at retrofit2.Retrofit.nextRequestBodyConverter(Retrofit.java:315)
at retrofit2.Retrofit.requestBodyConverter(Retrofit.java:293)
at retrofit2.RequestFactory$Builder.parseParameterAnnotation(RequestFactory.java:778)
... 12 more

Expected behavior:
Should display records from influxdb

Actual behavior:
Exceptions were thrown

Specifications:

  • Client Version:
    com.influxdb
    influxdb-client-java
    6.0.0
  • InfluxDB Version: 2.2.0
  • JDK Version: 1.8
  • Platform:Windows

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions