mirror of https://github.com/alibaba/fastjson2.git
fix bug for issue #3569 (#3574)
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, windows-latest) (push) Has been cancelled
Details
This commit is contained in:
parent
56b04c4355
commit
d5092258bb
|
@ -687,7 +687,11 @@ public class ObjectWriterAdapter<T>
|
|||
}
|
||||
if (valueWriter instanceof ObjectWriterAdapter) {
|
||||
ObjectWriterAdapter objectWriterAdapter = (ObjectWriterAdapter) valueWriter;
|
||||
fieldValue = objectWriterAdapter.toJSONObject(fieldValue);
|
||||
if (!objectWriterAdapter.getFieldWriters().isEmpty()) {
|
||||
fieldValue = objectWriterAdapter.toJSONObject(fieldValue);
|
||||
} else {
|
||||
fieldValue = JSON.toJSON(fieldValue);
|
||||
}
|
||||
}
|
||||
}
|
||||
jsonObject.put(fieldWriter.fieldName, fieldValue);
|
||||
|
|
|
@ -0,0 +1,33 @@
|
|||
package com.alibaba.fastjson2.issues_3500;
|
||||
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
public class Issue3569 {
|
||||
@Test
|
||||
public void test() {
|
||||
TestClass<String> testClass1 = new TestClass<>("hello");
|
||||
JSONObject jsonObject = JSONObject.from(testClass1);
|
||||
assertEquals(jsonObject.toString(), "{\"generic\":\"hello\"}");
|
||||
|
||||
TestClass<TestData> testClass2 = new TestClass<>(new TestData("hello"));
|
||||
jsonObject = JSONObject.from(testClass2);
|
||||
assertEquals(jsonObject.toString(), "{\"generic\":{\"testData\":\"hello\"}}");
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static class TestClass<T> {
|
||||
private T generic;
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public static class TestData {
|
||||
private String testData;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue