我正在尝试原型GraphQL
Java(
https://github.com/andimarek/graphql-java)并开始从hello world示例构建它.我正在使用GraphiQL来调用带有模式的graphQL服务,它适用于模式{hello1},但不适用于模式{testPojo}.请找到我在下面运行的代码.有人可以让我知道下面的代码有什么问题.
static GraphQLSchema schema = null; /** * POJO to be returned for service method 2 * @author * */ private class TestPojo { String id; String name; TestPojo(String id,String name) { this.id = id; this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } /** * service method 1 * @return */ public String greeting1() { return "Hello123"; } /** * service method 2 * @return */ public TestPojo greeting2() { return new TestPojo("1","Jack"); } /** * GraphQl endpoint invoked using GraphiQl * @param query * @return */ @RequestMapping("/query") public Object testGraphQLWithQuery(@RequestParam("query") String query) { return new GraphQL(schema).execute(query).getData(); } // Schema deFinition for graphQL static { // sub schema to be added to parent schema GraphQLObjectType testPojo = newObject().name("TestPojo").description("This is a test POJO") .field(newFieldDeFinition().name("id").type(GraphQLString).build()) .field(newFieldDeFinition().name("name").type(GraphQLString).build()) .build(); // parent schema GraphQLObjectType queryType = newObject().name("helloWorldQuery") .field(newFieldDeFinition().type(GraphQLString).name("hello1").dataFetcher(new DataFetcher() { @Override public Object get(DataFetchingEnvironment arg0) { Object a = new GrapgQLSampleController().greeting1(); return a; } }).build()) .field(newFieldDeFinition().type(testPojo).name("testPojo").dataFetcher(new DataFetcher() { @Override public Object get(DataFetchingEnvironment arg0) { Object a = new GrapgQLSampleController().greeting2(); return a; } }).build()) .build(); schema = GraphQLSchema.newSchema().query(queryType).build(); }
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。