Fliter jakarta.persistence types from AOT Metamodel.
Otherwise, Hibernate fails with weird resolution errors. See #3872
This commit is contained in:
@@ -47,7 +47,7 @@ class AotMetamodel implements Metamodel {
|
||||
private final Lazy<EntityManager> entityManager = Lazy.of(() -> entityManagerFactory.get().createEntityManager());
|
||||
|
||||
public AotMetamodel(Set<Class<?>> managedTypes) {
|
||||
this("dynamic-tests", managedTypes);
|
||||
this("AotMetamodel", managedTypes);
|
||||
}
|
||||
|
||||
private AotMetamodel(String persistenceUnit, Set<Class<?>> managedTypes) {
|
||||
|
||||
@@ -20,6 +20,7 @@ import jakarta.persistence.EntityManagerFactory;
|
||||
|
||||
import java.lang.reflect.Method;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.jspecify.annotations.Nullable;
|
||||
|
||||
@@ -71,7 +72,8 @@ public class JpaRepositoryContributor extends RepositoryContributor {
|
||||
|
||||
super(repositoryContext);
|
||||
|
||||
AotMetamodel amm = new AotMetamodel(repositoryContext.getResolvedTypes());
|
||||
AotMetamodel amm = new AotMetamodel(repositoryContext.getResolvedTypes().stream()
|
||||
.filter(it -> !it.getName().startsWith("jakarta.persistence")).collect(Collectors.toSet()));
|
||||
|
||||
this.persistenceProvider = PersistenceProvider.fromEntityManagerFactory(amm.getEntityManagerFactory());
|
||||
this.queriesFactory = new QueriesFactory(amm.getEntityManagerFactory(), amm);
|
||||
|
||||
Reference in New Issue
Block a user