Skip to content

[BUG] FastJsonConfig 配置writerFilter PropertyFilter 属性过滤,会导致KEY为空 #471

Closed
@William007001

Description

问题描述

简要描述您碰到的问题。
Spring mvc 模式下 FastJsonHttpMessageConverter 增加全局写过滤器,属性过滤器,过滤器中实现返回 true,导致KEY = null

环境信息

  • OS信息: [Windows 10 专业版 4Core 3.60GHz 16 GB]
  • JDK信息: [17+35-LTS-2724]
  • 版本信息:[Fastjson2 2.0.7]

重现步骤

`
@OverRide
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
List mediaTypes = new ArrayList<>();
mediaTypes.add(MediaType.APPLICATION_JSON);
fastConverter.setSupportedMediaTypes(mediaTypes);
FastJsonConfig fastJsonConfig = new FastJsonConfig();
// fastJsonConfig.setWriterFeatures(GlobalConst.JSON_WRITER_FEATURE);
// fastJsonConfig.setReaderFeatures(GlobalConst.JSON_READER_FEATURE);
fastJsonConfig.setDateFormat(DatePattern.NORM_DATETIME_PATTERN);
fastJsonConfig.setCharset(CharsetUtil.CHARSET_UTF_8);

    fastJsonConfig.setWriterFilters(SerializerKit.getDefaultFilter(environment));
    fastConverter.setFastJsonConfig(fastJsonConfig);

    converters.add(fastConverter);
}

static class CustomizePropertyFilter implements PropertyFilter {
/**
* 属性过滤
*
* @param object
* @param name
* @param value
* @return
*/
@OverRide
public boolean apply(Object object, String name, Object value) {
return true;
}
}
`

  1. 使用 xxx.xxx 方法
  2. 输入 ... 数据
  3. 出现 ... 错误
//可在此输入示例代码

期待的正确结果

对您期望发生的结果进行清晰简洁的描述。

相关日志输出

请复制并粘贴任何相关的日志输出。

附加信息

image

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions