Closed
Description
Search before asking
- I had searched in the issues and found no similar issues.
Version
- fury: 0.6.0.SNAPSHOT
- os: mac
- jdk: openjdk8
- fastjson: 1.2.70 (https://mvnrepository.com/artifact/com.alibaba/fastjson/1.2.70), not fastjson2
Component(s)
Java
Minimal reproduce step
public class TestMain {
static ThreadSafeFury fury = Fury.builder().withLanguage(Language.JAVA)
.requireClassRegistration(false)
.withRefTracking(true)
.registerGuavaTypes(false)
.withCompatibleMode(CompatibleMode.COMPATIBLE)
.withScopedMetaShare(true)
.buildThreadSafeFury();
public static void main(String[] args) {
DemoResponse resp = new DemoResponse();
byte[] serialize = fury.serialize(resp);
System.out.println("size:" + serialize.length);
}
}
import com.alibaba.fastjson.JSONObject;
@Data
public class DemoResponse {
private List<JSONObject> jsonObjs;
public DemoResponse() {
}
}
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.70</version>
</dependency>
What did you expect to see?
serialize successfuly.
0.6.0-SNAPSHOT is OK with fastjson2 2.x version, is failed with fastjon 1.x version
What did you see instead?
java.lang.ClassCastException: org.apache.fury.serializer.collection.MapSerializers$StringKeyMapSerializer cannot be cast to org.apache.fury.serializer.collection.MapSerializers$JDKCompatibleMapSerializer
at org.apache.fury.benchmark.state.JsonTest_DemoResponseFuryRefCodec_1_414493378_1225373914.<init>(JsonTest_DemoResponseFuryRefCodec_1_414493378_1225373914.java:51)
at org.apache.fury.serializer.Serializers.createSerializer(Serializers.java:129)
at org.apache.fury.serializer.Serializers.newSerializer(Serializers.java:104)
at org.apache.fury.resolver.ClassResolver.createSerializer(ClassResolver.java:1188)
at org.apache.fury.resolver.ClassResolver.getOrUpdateClassInfo(ClassResolver.java:1126)
at org.apache.fury.Fury.write(Fury.java:314)
at org.apache.fury.Fury.serialize(Fury.java:250)
at org.apache.fury.Fury.serialize(Fury.java:204)
at org.apache.fury.benchmark.state.JsonTest.testSerializeJso
Anything Else?
No response
Are you willing to submit a PR?
- I'm willing to submit a PR!