alibaba / fastjson2

🚄 FASTJSON2 is a Java JSON library with excellent performance.
Apache License 2.0
3.79k stars 495 forks source link

[BUG]:fastjson2 parseObject 会将空字符串 Empty String成功转成String[] 而不是失败 #3132

Open dnio99 opened 3 weeks ago

dnio99 commented 3 weeks ago

问题描述

JSONObject.parseObject会成功的将一个空字符串转换为String[],预期应该出现Exception。

环境信息

重现步骤

import com.alibaba.fastjson2.JSONObject;

import java.util.Arrays;

public class Main {

    public static void main(String[] args) {

        var str = "{\"xxx\": \"\"}";

        var fastjson = JSONObject.parseObject(str, TestObject.class);

        System.out.println(fastjson);
        System.out.println(Arrays.toString(fastjson.xxx()));
    }
}

record TestObject(String[] xxx) {

}

期待的正确结果

预期应该失败,不应该转换成功。

相关日志输出

TestObject[xxx=null] null

附加信息

相关代码