diff --git a/src/main/java/tools/jackson/databind/introspect/POJOPropertiesCollector.java b/src/main/java/tools/jackson/databind/introspect/POJOPropertiesCollector.java index e7654b584f..a1f1defeb4 100644 --- a/src/main/java/tools/jackson/databind/introspect/POJOPropertiesCollector.java +++ b/src/main/java/tools/jackson/databind/introspect/POJOPropertiesCollector.java @@ -1500,7 +1500,12 @@ protected void _renameProperties(Map props) // simple renaming? Just do it if (l.size() == 1) { PropertyName n = l.iterator().next(); - renamed.add(prop.withName(n)); + if (getObjectIdInfo() != null) { + renamed.add(prop); + } else { + renamed.add(prop.withName(n)); + } + continue; } // but this may be problematic... diff --git a/src/test/java/tools/jackson/databind/records/tofix/JsonIdentityOnRecord5238Test.java b/src/test/java/tools/jackson/databind/records/JsonIdentityOnRecord5238Test.java similarity index 94% rename from src/test/java/tools/jackson/databind/records/tofix/JsonIdentityOnRecord5238Test.java rename to src/test/java/tools/jackson/databind/records/JsonIdentityOnRecord5238Test.java index 95a9460aae..a04b48986f 100644 --- a/src/test/java/tools/jackson/databind/records/tofix/JsonIdentityOnRecord5238Test.java +++ b/src/test/java/tools/jackson/databind/records/JsonIdentityOnRecord5238Test.java @@ -1,4 +1,4 @@ -package tools.jackson.databind.records.tofix; +package tools.jackson.databind.records; import java.util.List; @@ -8,7 +8,6 @@ import tools.jackson.databind.ObjectMapper; import tools.jackson.databind.testutil.DatabindTestUtil; -import tools.jackson.databind.testutil.failure.JacksonTestFailureExpected; import static org.junit.jupiter.api.Assertions.*; @@ -51,7 +50,6 @@ public ThingPojo(@JsonProperty("prefixId") int id, @JsonProperty("name") String private final ObjectMapper MAPPER = newJsonMapper(); // [databind#5262]: Regression in 3.0? - @JacksonTestFailureExpected @Test void testIdentityWithPojo() throws Exception { ThingPojo t1 = new ThingPojo(1, "a");