| I'm trying 5.4.0.CR1, which contains https://hibernate.atlassian.net/browse/HHH-13060. The latter has caused our code that fetches mappings to fail. Below is a repro:
MetadataSources metadataSources = new MetadataSources();
metadataSources.addAnnotatedClass(model1.MyPojo.class);
metadataSources.addAnnotatedClass(model2.MyPojo.class);
Properties properties = new Properties();
properties.put(AvailableSettings.DIALECT, HSQLDialect.class.getName());
BootstrapServiceRegistry bootstrapServiceRegistry = new BootstrapServiceRegistryBuilder()
.build();
StandardServiceRegistryBuilder standardServiceRegistryBuilder = new StandardServiceRegistryBuilder(bootstrapServiceRegistry);
standardServiceRegistryBuilder.applySettings(properties);
StandardServiceRegistry standardServiceRegistry = standardServiceRegistryBuilder.build();
MetadataBuilder metadataBuilder = metadataSources.getMetadataBuilder(standardServiceRegistry);
Metadata metadata = metadataBuilder.build();
Iterator<PersistentClass> classMappings = metadata.getEntityBindings().iterator();
I just need the Metadata to retrieve PersistentClass objects (I don't need to build the SF). However, this fails now with the below error: Exception in thread "main" org.hibernate.DuplicateMappingException: The [model1.MyPojo] and [model2.MyPojo] entities share the same JPA entity name: [MyPojo] which is not allowed! at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.addEntityBinding(InFlightMetadataCollectorImpl.java:305) at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:826) at org.hibernate.boot.model.source.internal.annotations.AnnotationMetadataSourceProcessorImpl.processEntityHierarchies(AnnotationMetadataSourceProcessorImpl.java:250) at org.hibernate.boot.model.process.spi.MetadataBuildingProcess$1.processEntityHierarchies(MetadataBuildingProcess.java:231) at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:274) at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.build(MetadataBuildingProcess.java:84) at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:474) at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:85) at test.MyHibernateMain.main(MyHibernateMain.java:34) Any chance to expose an API to retrieve those {{PersistentClass}}es? |