Caused by: com.alibaba.fastjson2.JSONException: autoType is not support. org.springframework.security.core.authority.SimpleGrantedAuthority
时间: 2023-07-03 11:17:36 浏览: 190
这个错误是由 fastjson 序列化时出现的,它在序列化时尝试使用自动类型识别,但是这种行为是不安全的。在 Spring Security 中,SimpleGrantedAuthority 类被用来表示用户的权限,它被序列化时也会触发 fastjson 的自动类型识别,从而导致这个错误。为了解决这个问题,你可以使用 fastjson 的 SerializeConfig 来禁用自动类型识别,或者使用其他的 JSON 序列化库来替代 fastjson。
相关问题
caused by: com.alibaba.fastjson.jsonexception: write javabean error, fastjso
com.alibaba.fastjson.JSONException 是一个 JSON 解析/生成异常类,通常是由 fastjson 库在处理 JSON 字符串时发生错误导致的。
出现 "com.alibaba.fastjson.JSONException: write JavaBean error" 错误一般是由以下原因引起的:
1. JavaBean 对象和 JSON 字符串之间的属性不匹配。例如,JavaBean 对象缺少某些属性或 JSON 字符串包含了多余的属性,导致无法正确地将 JSON 字符串转换成 JavaBean 对象,或者无法将 JavaBean 对象转换成相应的 JSON 字符串。
解决方法:检查 JavaBean 对象和 JSON 字符串之间的属性是否一一对应并正确设置。
2. JavaBean 对象的属性和 JSON 字符串的属性类型不匹配。例如,JavaBean 对象中的属性是长整型,但是 JSON 字符串中对应的属性是字符串类型,导致类型转换错误。
解决方法:确保 JavaBean 对象的属性类型和 JSON 字符串中对应的属性类型一致。
3. JavaBean 对象中存在循环引用。即 JavaBean 对象的属性中包含了对自身的引用,导致 fastjson 无法正确处理。
解决方法:避免在 JavaBean 对象中出现循环引用,可以通过在 JavaBean 对象中使用 @JSONField(serialize=false) 注解来标记该属性不被序列化。
总之,"com.alibaba.fastjson.JSONException: write JavaBean error" 错误通常是由于 fastjson 在处理 JSON 字符串和 JavaBean 对象之间的转换时出现了问题。要解决这个错误,需要检查 JavaBean 对象和 JSON 字符串之间的属性是否匹配,并且确保属性类型一致。另外,要避免在 JavaBean 对象中出现循环引用。
Caused by: com.alibaba.fastjson.JSONException: parseDecimal error, field : acc920
这个错误是由 FastJSON 库抛出的,它表示在解析 JSON 字符串时出现错误。更具体地说,它指示 FastJSON 无法将字符串解析为数字类型。
在这种情况下,错误发生在字段 "acc920" 上。可能原因是该字段的值不是有效的数字,或者它是一个非标准的数字格式(如科学计数法)。您可以检查该字段的值,并确保它是有效的数字类型。如果值是无效的,请修复它,然后重新运行您的代码。
阅读全文