File tree Expand file tree Collapse file tree 1 file changed +11
-4
lines changed
spring-orm/src/main/java/org/springframework/orm/jpa/persistenceunit Expand file tree Collapse file tree 1 file changed +11
-4
lines changed Original file line number Diff line number Diff line change 21
21
import java .lang .reflect .Method ;
22
22
import java .lang .reflect .Proxy ;
23
23
import java .net .URL ;
24
- import java .util .Arrays ;
25
24
import java .util .HashMap ;
26
25
import java .util .HashSet ;
27
26
import java .util .LinkedList ;
@@ -375,10 +374,18 @@ public void preparePersistenceUnitInfos() {
375
374
* as defined in the JPA specification.
376
375
*/
377
376
private List <SpringPersistenceUnitInfo > readPersistenceUnitInfos () {
378
- PersistenceUnitReader reader = new PersistenceUnitReader (this .resourcePatternResolver , this .dataSourceLookup );
379
377
List <SpringPersistenceUnitInfo > infos = new LinkedList <SpringPersistenceUnitInfo >();
380
- infos .addAll (Arrays .asList (reader .readPersistenceUnitInfos (this .persistenceXmlLocations )));
381
- if (this .packagesToScan != null || this .mappingResources != null ) {
378
+ boolean buildDefaultUnit = (this .packagesToScan != null || this .mappingResources != null );
379
+ PersistenceUnitReader reader = new PersistenceUnitReader (this .resourcePatternResolver , this .dataSourceLookup );
380
+ SpringPersistenceUnitInfo [] readInfos = reader .readPersistenceUnitInfos (this .persistenceXmlLocations );
381
+ for (SpringPersistenceUnitInfo readInfo : readInfos ) {
382
+ infos .add (readInfo );
383
+ if (this .defaultPersistenceUnitName != null &&
384
+ this .defaultPersistenceUnitName .equals (readInfo .getPersistenceUnitName ())) {
385
+ buildDefaultUnit = false ;
386
+ }
387
+ }
388
+ if (buildDefaultUnit ) {
382
389
infos .add (buildDefaultPersistenceUnitInfo ());
383
390
}
384
391
return infos ;
You can’t perform that action at this time.
0 commit comments