diff --git a/hibernate-core/src/main/java/org/hibernate/type/EntityType.java b/hibernate-core/src/main/java/org/hibernate/type/EntityType.java index 6f873d2cfb..68bee2f524 100644 --- a/hibernate-core/src/main/java/org/hibernate/type/EntityType.java +++ b/hibernate-core/src/main/java/org/hibernate/type/EntityType.java @@ -338,9 +338,8 @@ public Object replace( } if ( session.getContextEntityIdentifier( original ) == null && ForeignKeys.isTransient( associatedEntityName, original, Boolean.FALSE, session ) ) { - final Object copy = session.getFactory().getEntityPersister( associatedEntityName ) + final Object copy = session.getEntityPersister( associatedEntityName, original ) .instantiate( null, session ); - //TODO: should this be Session.instantiate(Persister, ...)? copyCache.put( original, copy ); return copy; }