我已经为graphqlapi(springboot2、graphqlsspringbootstarter、GraphiQL)建立了一个工作设置。
然后,我尝试引入由graphql java扩展标量库提供的自定义标量(在本例中,是类型为java.time.LocalDate的成员的DateScalar):
我在模式中声明了自定义标量和类型,
scalar Date
...
somedate: Date
...
我提供了GraphQLScalarType
作为Springbean(否则服务器无法启动):
@Bean
public GraphQLScalarType date() {
return ExtendedScalars.Date;
}
我用日期执行了一个变异查询。
mutation {
createSomething(
something:{
...
somedate: "2018-07-20",
...
}
)
}
但不幸的是,我得到了这个例外,
com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `java.time.LocalDate` (no Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
经过几个小时的研究,我不知道会出什么问题。尽管配置中提供了标量,但标量似乎没有被拾起。
GraphQLInputType
看起来像这样,
@Data
public class Something implements GraphQLInputType {
...
private LocalDate somedate;
...
@Override
public String getName() {
return "Something";
}
}
问题是,要反序列化对象的类没有公共默认构造函数。
我认为,在为SchemaParserOptions提供经过调整的映射器配置后,它可以工作:
@Bean
public SchemaParserOptions schemaParserOptions(){
return SchemaParserOptions.newOptions().objectMapperConfigurer((mapper, context) -> {
mapper.registerModule(new JavaTimeModule());
}).build();
}
GraphQL使用自己的objectmapper,因此必须在其上注册JavaTimeModule。
我有一个以下类: 当我尝试转换JSON时 对于这个类实例,我得到以下异常: 获取原因:com . faster XML . Jackson . databind . jsonmappingexception:无法构造com . medianet . rtb . mogli . commons . dto . ad exchange . floor price data的实例:没有字符串参数构造函数
当然,所有依赖项(子类追加在同一个字符串中)。 从外部API获取数据的代码是; 当我运行代码并试图获取adress“API/3”时,出现以下错误:
-----------这是我的文件服务---------------------我使用的是spring boot 2.2.2 -------这是我的文件控制器-------- 进程已完成,退出代码为%1
问题内容: 我正在尝试从Oracle网站[fxml教程](http://docs.oracle.com/javase/8/javafx/get-started- tutorial/fxml_tutorial.htm )上的JavaFX教程。 这是我不断得到的例外。该应用程序未显示在屏幕上。我从另一个堆栈溢出答案中完成了非args Main()构造函数,但没有解决。 问题答案: 缺少初始关键字。 也
问题内容: 这似乎是最容易的事情,但它没有用。在普通的浏览器中,.html和.js文件可完美运行,但在Chrome扩展程序中,该功能无法执行应有的功能。 .js文件: .html文件: 因此,基本上,一旦用户单击“ hyhy”,“ ha”应更改为“ xxx”。再说一次- 它在浏览器中完美运行,但在扩展程序中不起作用。你知道为什么吗?以防万一我还要在下面附加manifest.json。 提前致谢!
我的映射器是: 如果我删除列表freq并改为字符串freq,它可以工作,但我的JSON可以包含一个或多个freq,所以我需要创建一个列表。我得到的异常如下: