Skip to content

[BUG]fastjson2中set方法连续多次设置数组,仅第一次set有效 #7681

Description

@hanqian200705

问题描述

fastjson2中JSONPath set方法连续两次设置数组,仅第一次有效

环境信息

  • OS信息:
  • JDK信息:Openjdk21
  • 版本信息:Fastjson2-2.0.61

重现步骤

            JSONObject row = new JSONObject();
            
            JSONObject aaa1 = new JSONObject();
            aaa1.put("import_id","250922223357263690");
            JSONObject bbb1 = new JSONObject();
            bbb1.put("import_id","250922223357263690");
            
            JSONPath.set(row,"data.aaa[0]",aaa1);
            JSONPath.set(row,"data.bbb[0]",bbb1);
            System.out.println("fastjson2 data:"+JSON.toJSON(row));

期待的正确结果

预期:{"data":{"aaa":[{"import_id":"111"}],"bbb":[{"import_id":"222"}]}}
目前:{"data":{"aaa":[{"import_id":"111"}]}}

JSONPath.set(row,"data.bbb[0]",bbb1); 貌似未生效,也未报错

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions