当前位置: 首页 > 知识库问答 >
问题:

Jackson 1.8.5(针对JSON)没有反序列化:“没有找到这样的类”

拓拔富
2023-03-14

我将JSON用于我的RESTful服务,并且我有JSON(作为有效负载载体格式)。

我在接口inta上使用@jsonTypeInfo(use=jsonTypeInfo.id.class,include=jsonTypeInfo.as.property,property=“class”)。类超类实现intamyclass扩展superclass

Caused by: java.lang.IllegalArgumentException: Invalid type id 'com.abc.xyz.MyClass' (for id type 'Id.class'): no such class found
        at org.codehaus.jackson.map.jsontype.impl.ClassNameIdResolver.typeFromId(ClassNameIdResolver.java:55)
        at org.codehaus.jackson.map.jsontype.impl.TypeDeserializerBase._findDeserializer(TypeDeserializerBase.java:77)
        at org.codehaus.jackson.map.jsontype.impl.AsPropertyTypeDeserializer.deserializeTypedFromObject(AsPropertyTypeDeserializer.java:67)
        at org.codehaus.jackson.map.deser.BeanDeserializer.deserializeWithType(BeanDeserializer.java:423)
        at org.codehaus.jackson.map.deser.StdDeserializerProvider$WrappedDeserializer.deserialize(StdDeserializerProvider.java:460)
        at org.codehaus.jackson.map.ObjectMapper._readValue(ObjectMapper.java:2376)
        at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1166)
        at org.codehaus.jackson.jaxrs.JacksonJsonProvider.readFrom(JacksonJsonProvider.java:410)
        at org.apache.cxf.jaxrs.client.AbstractClient.readBody(AbstractClient.java:447)

非常感谢任何帮助。

共有1个答案

澹台志诚
2023-03-14

这听起来像是类路径问题:也就是说,Jackson代码无法用它的类加载器找到命名类。如果可能的话,也许您可以看看Jackson和value类的JAR来自哪里,并看看这是否可以解释它。不幸的是,类路径问题在servlet容器部署中非常臭名昭著。

 类似资料:
  • 问题内容: 我正在处理,&,但出现此错误。 请在下面检查我的实体 我该如何解决? 问题答案: 通过hibernate代理对象进行延迟加载时,我遇到了类似的问题。通过用以下方式注释具有延迟加载的私有属性的类来解决此问题: 我假设您可以在代理对象上添加打破JSON序列化到该批注的属性。 问题在于实体是延迟加载的,序列化是在实体完全加载之前发生的。

  • 问题内容: 我正在处理,&,但出现此错误。 请在下面检查我的实体 我该如何解决? 问题答案: 通过休眠代理对象进行延迟加载时,我遇到了类似的问题。通过用以下方式注释具有延迟加载的私有属性的类来解决此问题: 我假设您可以在代理对象上添加将JSON序列化破坏到该注释的属性。 问题在于实体是延迟加载的,序列化是在实体完全加载之前发生的。

  • 试图量化神经网络。我在tenorflow repo目录中运行了以下命令 并得到错误: 错误:跳过“tensorflow/tools/quantization/tools:Quantizaze_graph”:没有这样的包“tensorflow/tools/quantization/tools”:在包路径上找不到生成文件警告:目标模式解析失败。错误:没有这样的包“tensorflow/tools/qu

  • 使用Jackson将JSON响应反序列化为DTO。 使用Gson或Jackson反序列化JSON时忽略空字段 他们仍然从那个不规则的JSON对象创建一个对象。 这意味着我需要遍历这个列表,并通过实现一个清理方法删除所有不具有属性“value”的对象。 我的带有Jackson注释的DTO: 给定JSON响应的结果是初始化了3个DTOs,而不是4个。

  • 我是硒的新手,请帮帮我。整个代码: 如何为以粗体突出显示的元素选择xpath?我试过很多例子,但不幸的是没有一个像预期的那样有效。任何帮助都会很好。