0

I am querying on NULL value in java (on cosmos document db) but its throwing error, below is the Syntax:

import com.azure.cosmos.models.CosmosQueryRequestOptions;
import com.azure.spring.data.cosmos.core.generator.FindQuerySpecGenerator;
import com.azure.cosmos.models.SqlQuerySpec;
import com.azure.spring.data.cosmos.core.query.CosmosQuery;
import com.azure.spring.data.cosmos.core.query.Criteria;
import com.azure.spring.data.cosmos.core.query.CriteriaType;
import org.springframework.data.repository.query.parser.Part;
import java.util.Arrays;

Criteria criteria = Criteria.getInstance(CriteriaType.IS_EQUAL,
                "tripId",
                new ArrayList(Arrays.asList(null)),
                Part.IgnoreCaseType.NEVER);

CosmosQuery documentQuery = new CosmosQuery(criteria);
SqlQuerySpec sqlQuerySpec = new FindQuerySpecGenerator().generateCosmos(documentQuery);
    

Here is the Exception: Exception in thread "main" java.lang.NullPointerException at java.util.Objects.requireNonNull(Objects.java:203) at java.util.Arrays$ArrayList.(Arrays.java:3813) at java.util.Arrays.asList(Arrays.java:3800)

Shariq
  • 2,754
  • 2
  • 14
  • 8

1 Answers1

0

the Solution:

ArrayList<Object> emptyList= new ArrayList<Object>();
Criteria criteria = Criteria.getInstance(CriteriaType.IS_NULL,
                        "tripId",
                        emptyList,
                        Part.IgnoreCaseType.NEVER);
    
CosmosQuery documentQuery = new CosmosQuery(criteria);
SqlQuerySpec sqlQuerySpec = new FindQuerySpecGenerator().generateCosmos(documentQuery);
Shariq
  • 2,754
  • 2
  • 14
  • 8