[BUG] 反序列化错误
- Dominant language
- Java
- Stars
- 4.4k
- Forks
- 613
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 6
Description
### 问题描述
反序列化错误
### 环境信息
*请填写以下信息:*
- OS信息: Windows 11
- JDK信息: Java 21
- 版本信息:Fastjson2 2.0.52
### 重现步骤
共计两个错误,直接运行test方法即可,错误1:
```java
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.alibaba.fastjson2.JSONReader;
import com.alibaba.fastjson2.JSONWriter.Feature;
import com.alibaba.fastjson2.filter.Filter;
import org.junit.jupiter.api.Test;
import java.util.LinkedHashMap;
import java.util.Map;
public class JsonTest {
static final Filter filter = JSONReader.autoTypeFilter("JsonTest");
public static class User {
public final Map modules = new LinkedHashMap<>();
}
public static class Module {
}
@Test
public void test() {
User user = new User();
user.modules.put("1", new Module());
String json = JSONObject.toJSONString(user, Feature.WriteClassName);
JSON.parseObject(json, User.class, filter);
}
}
```
错误2:
```java
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.alibaba.fastjson2.JSONReader;
import com.alibaba.fastjson2.JSONWriter.Feature;
import com.alibaba.fastjson2.filter.Filter;
import org.junit.jupiter.api.Test;
import java.util.LinkedHashMap;
import java.util.Map;
public class JsonTest {
static final Filter filter = JSONReader.autoTypeFilter("JsonTest");
public static class User {
public final Map modules = new LinkedHashMap<>();
}
@Test
public void test() {
User user = new User();
user.modules.put("1", 100);
String json = JSONObject.toJSONString(user, Feature.WriteClassName);
JSON.parseObject(json, User.class, filter);
}
}
```
### 期待的正确结果
正确反序列化
### 相关日志输出
运行代码即可
#### 附加信息
无
Contributor guide
Research direction
Start by running the two JsonTest.test reproductions on Java 21 with Fastjson2 2.0.52, using JSON.parseObject, autoTypeFilter, and WriteClassName as shown. Trace the deserialization path for both Map and Map cases, then verify both deserialize successfully without errors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend-api-design
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100