Я пытаюсь использовать io.leangen.graphql.execution.relay.Page;
Вот так
@GraphQLQuery
public Page<SysUser> sysUsers(SysUser sysUser,
@GraphQLArgument(name = "page", defaultValue = "1") int page,
@GraphQLArgument(name = "size", defaultValue = "10") int size,
@GraphQLArgument(name = "direction", defaultValue = "\"ASC\"") Direction direction,
@GraphQLArgument(name = "properties", defaultValue = "[\"id\"]") String... properties) {
log.info("user: {} page: {} size: {} direction: {} properties: {}", sysUser, page, size,
direction, properties);
PageRequest pageRequest = PageRequest.of(page, size, direction, properties);
return PageFactory.createOffsetBasedPage(sysUserRepository.findAll(pageRequest).getContent(), size, page);
}
Но когда я запускаю свое приложение ...
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'graphqlSchema' defined in class path resource [in/gaks/oneyard/config/GraphConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [graphql.schema.GraphQLSchema]: Factory method 'graphqlSchema' threw exception; nested exception is io.leangen.graphql.metadata.exceptions.MappingException: Operation 'sysUsers' is incompatible with the Relay Connection spec due to required arguments missing. If this is intentional, disable strict compliance checking. For details and solutions see https://github.com/leangen/graphql-spqr/wiki/Errors#relay-connection-spec-violation
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:645) ~[spring-beans-5.2.0.RELEASE.jar:5.2.0.RELEASE]
//...........
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [graphql.schema.GraphQLSchema]: Factory method 'graphqlSchema' threw exception; nested exception is io.leangen.graphql.metadata.exceptions.MappingException: Operation 'sysUsers' is incompatible with the Relay Connection spec due to required arguments missing. If this is intentional, disable strict compliance checking. For details and solutions see https://github.com/leangen/graphql-spqr/wiki/Errors#relay-connection-spec-violation
... 24 common frames omitted
Caused by: io.leangen.graphql.metadata.exceptions.MappingException: Operation 'sysUsers' is incompatible with the Relay Connection spec due to required arguments missing. If this is intentional, disable strict compliance checking. For details and solutions see https://github.com/leangen/graphql-spqr/wiki/Errors#relay-connection-spec-violation
at io.leangen.graphql.generator.OperationMapper.validateConnectionSpecCompliance(OperationMapper.java:437) ~[spqr-0.9.9.jar:na]
at io.leangen.graphql.generator.OperationMapper.toGraphQLField(OperationMapper.java:170) ~[spqr-0.9.9.jar:na]
at io.leangen.graphql.generator.OperationMapper.lambda$generateQueries$0(OperationMapper.java:101) ~[spqr-0.9.9.jar:na]
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195) ~[na:na]
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1654) ~[na:na]
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484) ~[na:na]
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) ~[na:na]
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913) ~[na:na]
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[na:na]
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578) ~[na:na]
at io.leangen.graphql.generator.OperationMapper.generateQueries(OperationMapper.java:102) ~[spqr-0.9.9.jar:na]
at io.leangen.graphql.generator.OperationMapper.<init>(OperationMapper.java:84) ~[spqr-0.9.9.jar:na]
at io.leangen.graphql.GraphQLSchemaGenerator.generate(GraphQLSchemaGenerator.java:962) ~[spqr-0.9.9.jar:na]
//.....
Я захожу на https://github.com/leangen/graphql-spqr/wiki/Errors#relay-connection-spec-violation
И пробую весь метод, он не может работать ...
Мой GraphConfig
private final @NotNull List<BaseController> controllerList;
@Bean
public GraphQLSchema graphqlSchema() {
GraphQLSchemaGenerator generator = new GraphQLSchemaGenerator();
controllerList.forEach(generator::withOperationsFromSingleton);
generator.withOperationBuilder(
new DefaultOperationBuilder(DefaultOperationBuilder.TypeInference.LIMITED));
return generator.generate();
}
Пожалуйста, помогите мне!
Спасибо!