Skip to content

RequestFactorySourceWriter.isRequestBody triggers a NullPointerException when using annotations #50

@natros

Description

@natros

RequestFactorySourceWriter.isRequestBody triggers a NullPointerException when using any kind of annotation. I'm trying to use validation with @Valid from jakarta.validation:jakarta.validation-api:2.0.2 or javax.validation:validation-api:2.0.1.Final to validate a DTO.

@RequestFactory
@Path("/users")
@Produces("application/json")
@Consumes("application/json")
public interface UserResource {
  //...
  @POST
  void addUser(@Valid UserDto dto);
}
error: error while creating source file java.lang.NullPointerException
        at org.dominokit.domino.rest.apt.RequestFactorySourceWriter.isRequestBody(RequestFactorySourceWriter.java:513)
        at org.dominokit.domino.rest.apt.RequestFactorySourceWriter.isBodyParameter(RequestFactorySourceWriter.java:496)
        at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:176)
        at java.base/java.util.ArrayList$ArrayListSpliterator.tryAdvance(ArrayList.java:1631)
        at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
        at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543)
        at org.dominokit.domino.rest.apt.RequestFactorySourceWriter.getRequestBeanType(RequestFactorySourceWriter.java:462)
        at org.dominokit.domino.rest.apt.RequestFactorySourceWriter.makeRequestClass(RequestFactorySourceWriter.java:385)
        at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
        at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1654)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
        at org.dominokit.domino.rest.apt.RequestFactorySourceWriter.asTypeBuilder(RequestFactorySourceWriter.java:89)
        at org.dominokit.domino.rest.apt.RequestFactoryProcessingStep.generateFactory(RequestFactoryProcessingStep.java:55)
        at org.dominokit.domino.rest.apt.RequestFactoryProcessingStep.process(RequestFactoryProcessingStep.java:46)
        at org.dominokit.domino.rest.apt.RequestFactoryProcessor.process(RequestFactoryProcessor.java:44)
....

I'm using org.dominokit:domino-rest-apt:1.0-rc.4-SNAPSHOT with java 11.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions