@@ -135,18 +135,18 @@ public void onApplicationStart() {
135135 JPQL .instance = new JPQL ();
136136 }
137137
138- private List <String > entityClasses (String dbName ) {
139- List <String > entityClasses = new ArrayList <>();
138+ private List <Class > entityClasses (String dbName ) {
139+ List <Class > entityClasses = new ArrayList <>();
140140
141141 List <Class > classes = Play .classloader .getAnnotatedClasses (Entity .class );
142142 for (Class <?> clazz : classes ) {
143143 if (clazz .isAnnotationPresent (Entity .class )) {
144144 // Do we have a transactional annotation matching our dbname?
145145 PersistenceUnit pu = clazz .getAnnotation (PersistenceUnit .class );
146146 if (pu != null && pu .name ().equals (dbName )) {
147- entityClasses .add (clazz . getName () );
147+ entityClasses .add (clazz );
148148 } else if (pu == null && JPA .DEFAULT .equals (dbName )) {
149- entityClasses .add (clazz . getName () );
149+ entityClasses .add (clazz );
150150 }
151151 }
152152 }
@@ -162,9 +162,9 @@ private List<String> entityClasses(String dbName) {
162162 // Do we have a transactional annotation matching our dbname?
163163 PersistenceUnit pu = clazz .getAnnotation (PersistenceUnit .class );
164164 if (pu != null && pu .name ().equals (dbName )) {
165- entityClasses .add (clazz . getName () );
165+ entityClasses .add (clazz );
166166 } else if (pu == null && JPA .DEFAULT .equals (dbName )) {
167- entityClasses .add (clazz . getName () );
167+ entityClasses .add (clazz );
168168 }
169169 } catch (Exception e ) {
170170 Logger .warn (e , "JPA -> Entity not found: %s" , entity );
@@ -184,8 +184,11 @@ protected EntityManagerFactory newEntityManagerFactory(String dbName, Configurat
184184 }
185185
186186 protected PersistenceUnitInfoImpl persistenceUnitInfo (String dbName , Configuration dbConfig ) {
187- return new PersistenceUnitInfoImpl (dbName ,
188- entityClasses (dbName ), mappingFiles (dbConfig ), properties (dbName , dbConfig ));
187+ final List <Class > managedClasses = entityClasses (dbName );
188+ final Properties properties = properties (dbName , dbConfig );
189+ properties .put (org .hibernate .jpa .AvailableSettings .LOADED_CLASSES ,managedClasses );
190+ return new PersistenceUnitInfoImpl (dbName ,
191+ managedClasses , mappingFiles (dbConfig ), properties );
189192 }
190193
191194 private List <String > mappingFiles (Configuration dbConfig ) {
0 commit comments