public abstract class org.springframework.orm.jpa.EntityManagerFactoryUtils
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.springframework.orm.jpa.EntityManagerFactoryUtils
super_class: java.lang.Object
{
public static final int ENTITY_MANAGER_SYNCHRONIZATION_ORDER;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 900
private static final org.apache.commons.logging.Log logger;
descriptor: Lorg/apache/commons/logging/Log;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/springframework/orm/jpa/EntityManagerFactoryUtils;
invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
putstatic org.springframework.orm.jpa.EntityManagerFactoryUtils.logger:Lorg/apache/commons/logging/Log;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/orm/jpa/EntityManagerFactoryUtils;
public static javax.persistence.EntityManagerFactory findEntityManagerFactory(org.springframework.beans.factory.ListableBeanFactory, java.lang.String);
descriptor: (Lorg/springframework/beans/factory/ListableBeanFactory;Ljava/lang/String;)Ljavax/persistence/EntityManagerFactory;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: aload 0
ldc "ListableBeanFactory must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
1: aload 1
invokestatic org.springframework.util.StringUtils.hasLength:(Ljava/lang/String;)Z
ifeq 13
2: aload 0
ldc Ljavax/persistence/EntityManagerFactory;
invokestatic org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors:(Lorg/springframework/beans/factory/ListableBeanFactory;Ljava/lang/Class;)[Ljava/lang/String;
3: astore 2
start local 2 4: aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 11
StackMap locals: org.springframework.beans.factory.ListableBeanFactory java.lang.String java.lang.String[] top int int java.lang.String[]
StackMap stack:
5: aload 6
iload 4
aaload
astore 3
start local 3 6: aload 0
aload 3
invokeinterface org.springframework.beans.factory.ListableBeanFactory.getBean:(Ljava/lang/String;)Ljava/lang/Object;
checkcast javax.persistence.EntityManagerFactory
astore 7
start local 7 7: aload 7
instanceof org.springframework.orm.jpa.EntityManagerFactoryInfo
ifeq 10
8: aload 1
aload 7
checkcast org.springframework.orm.jpa.EntityManagerFactoryInfo
invokeinterface org.springframework.orm.jpa.EntityManagerFactoryInfo.getPersistenceUnitName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
9: aload 7
areturn
end local 7 end local 3 10: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
11: iload 4
iload 5
if_icmplt 5
12: aload 0
aload 1
ldc Ljavax/persistence/EntityManagerFactory;
invokeinterface org.springframework.beans.factory.ListableBeanFactory.getBean:(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
checkcast javax.persistence.EntityManagerFactory
areturn
end local 2 13: StackMap locals: org.springframework.beans.factory.ListableBeanFactory java.lang.String
StackMap stack:
aload 0
ldc Ljavax/persistence/EntityManagerFactory;
invokeinterface org.springframework.beans.factory.ListableBeanFactory.getBean:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast javax.persistence.EntityManagerFactory
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 beanFactory Lorg/springframework/beans/factory/ListableBeanFactory;
0 14 1 unitName Ljava/lang/String;
4 13 2 candidateNames [Ljava/lang/String;
6 10 3 candidateName Ljava/lang/String;
7 10 7 emf Ljavax/persistence/EntityManagerFactory;
Exceptions:
throws org.springframework.beans.factory.NoSuchBeanDefinitionException
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
beanFactory
unitName
public static javax.persistence.EntityManager getTransactionalEntityManager(javax.persistence.EntityManagerFactory);
descriptor: (Ljavax/persistence/EntityManagerFactory;)Ljavax/persistence/EntityManager;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
invokestatic org.springframework.orm.jpa.EntityManagerFactoryUtils.getTransactionalEntityManager:(Ljavax/persistence/EntityManagerFactory;Ljava/util/Map;)Ljavax/persistence/EntityManager;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 emf Ljavax/persistence/EntityManagerFactory;
Exceptions:
throws org.springframework.dao.DataAccessResourceFailureException
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
emf
public static javax.persistence.EntityManager getTransactionalEntityManager(javax.persistence.EntityManagerFactory, java.util.Map<?, ?>);
descriptor: (Ljavax/persistence/EntityManagerFactory;Ljava/util/Map;)Ljavax/persistence/EntityManager;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokestatic org.springframework.orm.jpa.EntityManagerFactoryUtils.doGetTransactionalEntityManager:(Ljavax/persistence/EntityManagerFactory;Ljava/util/Map;Z)Ljavax/persistence/EntityManager;
1: areturn
2: StackMap locals:
StackMap stack: javax.persistence.PersistenceException
astore 2
start local 2 3: new org.springframework.dao.DataAccessResourceFailureException
dup
ldc "Could not obtain JPA EntityManager"
aload 2
invokespecial org.springframework.dao.DataAccessResourceFailureException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 emf Ljavax/persistence/EntityManagerFactory;
0 4 1 properties Ljava/util/Map<**>;
3 4 2 ex Ljavax/persistence/PersistenceException;
Exception table:
from to target type
0 1 2 Class javax.persistence.PersistenceException
Exceptions:
throws org.springframework.dao.DataAccessResourceFailureException
Signature: (Ljavax/persistence/EntityManagerFactory;Ljava/util/Map<**>;)Ljavax/persistence/EntityManager;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
emf
properties
public static javax.persistence.EntityManager doGetTransactionalEntityManager(javax.persistence.EntityManagerFactory, java.util.Map<?, ?>);
descriptor: (Ljavax/persistence/EntityManagerFactory;Ljava/util/Map;)Ljavax/persistence/EntityManager;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokestatic org.springframework.orm.jpa.EntityManagerFactoryUtils.doGetTransactionalEntityManager:(Ljavax/persistence/EntityManagerFactory;Ljava/util/Map;Z)Ljavax/persistence/EntityManager;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 emf Ljavax/persistence/EntityManagerFactory;
0 1 1 properties Ljava/util/Map<**>;
Exceptions:
throws javax.persistence.PersistenceException
Signature: (Ljavax/persistence/EntityManagerFactory;Ljava/util/Map<**>;)Ljavax/persistence/EntityManager;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
emf
properties
public static javax.persistence.EntityManager doGetTransactionalEntityManager(javax.persistence.EntityManagerFactory, java.util.Map<?, ?>, boolean);
descriptor: (Ljavax/persistence/EntityManagerFactory;Ljava/util/Map;Z)Ljavax/persistence/EntityManager;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ldc "No EntityManagerFactory specified"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
1: aload 0
invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.getResource:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.springframework.orm.jpa.EntityManagerHolder
2: astore 3
start local 3 3: aload 3
ifnull 24
4: iload 2
ifeq 18
5: aload 3
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.isSynchronizedWithTransaction:()Z
ifne 16
6: invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.isActualTransactionActive:()Z
ifeq 11
7: aload 3
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.getEntityManager:()Ljavax/persistence/EntityManager;
invokeinterface javax.persistence.EntityManager.joinTransaction:()V
8: goto 11
9: StackMap locals: javax.persistence.EntityManagerFactory java.util.Map int org.springframework.orm.jpa.EntityManagerHolder
StackMap stack: javax.persistence.TransactionRequiredException
astore 4
start local 4 10: getstatic org.springframework.orm.jpa.EntityManagerFactoryUtils.logger:Lorg/apache/commons/logging/Log;
ldc "Could not join transaction because none was actually active"
aload 4
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 4 11: StackMap locals:
StackMap stack:
invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.isSynchronizationActive:()Z
ifeq 16
12: aload 3
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.getEntityManager:()Ljavax/persistence/EntityManager;
aload 0
invokestatic org.springframework.orm.jpa.EntityManagerFactoryUtils.prepareTransaction:(Ljavax/persistence/EntityManager;Ljavax/persistence/EntityManagerFactory;)Ljava/lang/Object;
astore 4
start local 4 13: new org.springframework.orm.jpa.EntityManagerFactoryUtils$TransactionalEntityManagerSynchronization
dup
aload 3
aload 0
aload 4
iconst_0
invokespecial org.springframework.orm.jpa.EntityManagerFactoryUtils$TransactionalEntityManagerSynchronization.<init>:(Lorg/springframework/orm/jpa/EntityManagerHolder;Ljavax/persistence/EntityManagerFactory;Ljava/lang/Object;Z)V
14: invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.registerSynchronization:(Lorg/springframework/transaction/support/TransactionSynchronization;)V
15: aload 3
iconst_1
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.setSynchronizedWithTransaction:(Z)V
end local 4 16: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.requested:()V
17: aload 3
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.getEntityManager:()Ljavax/persistence/EntityManager;
areturn
18: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.isTransactionActive:()Z
ifeq 23
aload 3
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.isOpen:()Z
ifne 23
19: invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.isSynchronizationActive:()Z
ifne 21
20: aconst_null
areturn
21: StackMap locals:
StackMap stack:
aload 0
invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.unbindResource:(Ljava/lang/Object;)Ljava/lang/Object;
pop
22: goto 26
23: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.getEntityManager:()Ljavax/persistence/EntityManager;
areturn
24: StackMap locals:
StackMap stack:
invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.isSynchronizationActive:()Z
ifne 26
25: aconst_null
areturn
26: StackMap locals:
StackMap stack:
getstatic org.springframework.orm.jpa.EntityManagerFactoryUtils.logger:Lorg/apache/commons/logging/Log;
ldc "Opening JPA EntityManager"
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
27: aconst_null
astore 4
start local 4 28: iload 2
ifne 32
29: aload 0
getstatic javax.persistence.SynchronizationType.UNSYNCHRONIZED:Ljavax/persistence/SynchronizationType;
aload 1
invokeinterface javax.persistence.EntityManagerFactory.createEntityManager:(Ljavax/persistence/SynchronizationType;Ljava/util/Map;)Ljavax/persistence/EntityManager;
astore 4
30: goto 32
31: StackMap locals: javax.persistence.EntityManagerFactory java.util.Map int org.springframework.orm.jpa.EntityManagerHolder javax.persistence.EntityManager
StackMap stack: java.lang.AbstractMethodError
pop
32: StackMap locals:
StackMap stack:
aload 4
ifnonnull 36
33: aload 1
invokestatic org.springframework.util.CollectionUtils.isEmpty:(Ljava/util/Map;)Z
ifne 34
aload 0
aload 1
invokeinterface javax.persistence.EntityManagerFactory.createEntityManager:(Ljava/util/Map;)Ljavax/persistence/EntityManager;
goto 35
StackMap locals:
StackMap stack:
34: aload 0
invokeinterface javax.persistence.EntityManagerFactory.createEntityManager:()Ljavax/persistence/EntityManager;
StackMap locals:
StackMap stack: javax.persistence.EntityManager
35: astore 4
36: StackMap locals:
StackMap stack:
new org.springframework.orm.jpa.EntityManagerHolder
dup
aload 4
invokespecial org.springframework.orm.jpa.EntityManagerHolder.<init>:(Ljavax/persistence/EntityManager;)V
astore 3
37: iload 2
ifeq 43
38: aload 4
aload 0
invokestatic org.springframework.orm.jpa.EntityManagerFactoryUtils.prepareTransaction:(Ljavax/persistence/EntityManager;Ljavax/persistence/EntityManagerFactory;)Ljava/lang/Object;
astore 5
start local 5 39: new org.springframework.orm.jpa.EntityManagerFactoryUtils$TransactionalEntityManagerSynchronization
dup
aload 3
aload 0
aload 5
iconst_1
invokespecial org.springframework.orm.jpa.EntityManagerFactoryUtils$TransactionalEntityManagerSynchronization.<init>:(Lorg/springframework/orm/jpa/EntityManagerHolder;Ljavax/persistence/EntityManagerFactory;Ljava/lang/Object;Z)V
40: invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.registerSynchronization:(Lorg/springframework/transaction/support/TransactionSynchronization;)V
41: aload 3
iconst_1
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.setSynchronizedWithTransaction:(Z)V
end local 5 42: goto 45
43: StackMap locals:
StackMap stack:
new org.springframework.orm.jpa.EntityManagerFactoryUtils$TransactionScopedEntityManagerSynchronization
dup
aload 3
aload 0
invokespecial org.springframework.orm.jpa.EntityManagerFactoryUtils$TransactionScopedEntityManagerSynchronization.<init>:(Lorg/springframework/orm/jpa/EntityManagerHolder;Ljavax/persistence/EntityManagerFactory;)V
44: invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.registerSynchronization:(Lorg/springframework/transaction/support/TransactionSynchronization;)V
45: StackMap locals:
StackMap stack:
aload 0
aload 3
invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.bindResource:(Ljava/lang/Object;Ljava/lang/Object;)V
46: goto 50
47: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 5
start local 5 48: aload 4
invokestatic org.springframework.orm.jpa.EntityManagerFactoryUtils.closeEntityManager:(Ljavax/persistence/EntityManager;)V
49: aload 5
athrow
end local 5 50: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 51 0 emf Ljavax/persistence/EntityManagerFactory;
0 51 1 properties Ljava/util/Map<**>;
0 51 2 synchronizedWithTransaction Z
3 51 3 emHolder Lorg/springframework/orm/jpa/EntityManagerHolder;
10 11 4 ex Ljavax/persistence/TransactionRequiredException;
13 16 4 transactionData Ljava/lang/Object;
28 51 4 em Ljavax/persistence/EntityManager;
39 42 5 transactionData Ljava/lang/Object;
48 50 5 ex Ljava/lang/RuntimeException;
Exception table:
from to target type
7 8 9 Class javax.persistence.TransactionRequiredException
29 30 31 Class java.lang.AbstractMethodError
36 46 47 Class java.lang.RuntimeException
Exceptions:
throws javax.persistence.PersistenceException
Signature: (Ljavax/persistence/EntityManagerFactory;Ljava/util/Map<**>;Z)Ljavax/persistence/EntityManager;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
MethodParameters:
Name Flags
emf
properties
synchronizedWithTransaction
private static java.lang.Object prepareTransaction(javax.persistence.EntityManager, javax.persistence.EntityManagerFactory);
descriptor: (Ljavax/persistence/EntityManager;Ljavax/persistence/EntityManagerFactory;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.springframework.orm.jpa.EntityManagerFactoryInfo
ifeq 8
1: aload 1
checkcast org.springframework.orm.jpa.EntityManagerFactoryInfo
astore 2
start local 2 2: aload 2
invokeinterface org.springframework.orm.jpa.EntityManagerFactoryInfo.getJpaDialect:()Lorg/springframework/orm/jpa/JpaDialect;
astore 3
start local 3 3: aload 3
ifnull 8
4: aload 3
aload 0
5: invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.isCurrentTransactionReadOnly:()Z
6: invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.getCurrentTransactionName:()Ljava/lang/String;
7: invokeinterface org.springframework.orm.jpa.JpaDialect.prepareTransaction:(Ljavax/persistence/EntityManager;ZLjava/lang/String;)Ljava/lang/Object;
areturn
end local 3 end local 2 8: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 em Ljavax/persistence/EntityManager;
0 9 1 emf Ljavax/persistence/EntityManagerFactory;
2 8 2 emfInfo Lorg/springframework/orm/jpa/EntityManagerFactoryInfo;
3 8 3 jpaDialect Lorg/springframework/orm/jpa/JpaDialect;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
em
emf
private static void cleanupTransaction(java.lang.Object, javax.persistence.EntityManagerFactory);
descriptor: (Ljava/lang/Object;Ljavax/persistence/EntityManagerFactory;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.springframework.orm.jpa.EntityManagerFactoryInfo
ifeq 5
1: aload 1
checkcast org.springframework.orm.jpa.EntityManagerFactoryInfo
astore 2
start local 2 2: aload 2
invokeinterface org.springframework.orm.jpa.EntityManagerFactoryInfo.getJpaDialect:()Lorg/springframework/orm/jpa/JpaDialect;
astore 3
start local 3 3: aload 3
ifnull 5
4: aload 3
aload 0
invokeinterface org.springframework.orm.jpa.JpaDialect.cleanupTransaction:(Ljava/lang/Object;)V
end local 3 end local 2 5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 transactionData Ljava/lang/Object;
0 6 1 emf Ljavax/persistence/EntityManagerFactory;
2 5 2 emfInfo Lorg/springframework/orm/jpa/EntityManagerFactoryInfo;
3 5 3 jpaDialect Lorg/springframework/orm/jpa/JpaDialect;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
1:
MethodParameters:
Name Flags
transactionData
emf
public static void applyTransactionTimeout(javax.persistence.Query, javax.persistence.EntityManagerFactory);
descriptor: (Ljavax/persistence/Query;Ljavax/persistence/EntityManagerFactory;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.getResource:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.springframework.orm.jpa.EntityManagerHolder
astore 2
start local 2 1: aload 2
ifnull 6
aload 2
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.hasTimeout:()Z
ifeq 6
2: aload 2
invokevirtual org.springframework.orm.jpa.EntityManagerHolder.getTimeToLiveInMillis:()J
l2i
istore 3
start local 3 3: aload 0
ldc "javax.persistence.query.timeout"
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface javax.persistence.Query.setHint:(Ljava/lang/String;Ljava/lang/Object;)Ljavax/persistence/Query;
pop
4: goto 6
5: StackMap locals: javax.persistence.Query javax.persistence.EntityManagerFactory org.springframework.orm.jpa.EntityManagerHolder int
StackMap stack: java.lang.IllegalArgumentException
pop
end local 3 6: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 query Ljavax/persistence/Query;
0 7 1 emf Ljavax/persistence/EntityManagerFactory;
1 7 2 emHolder Lorg/springframework/orm/jpa/EntityManagerHolder;
3 6 3 timeoutValue I
Exception table:
from to target type
3 4 5 Class java.lang.IllegalArgumentException
MethodParameters:
Name Flags
query
emf
public static org.springframework.dao.DataAccessException convertJpaAccessExceptionIfPossible(java.lang.RuntimeException);
descriptor: (Ljava/lang/RuntimeException;)Lorg/springframework/dao/DataAccessException;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
instanceof java.lang.IllegalStateException
ifeq 2
1: new org.springframework.dao.InvalidDataAccessApiUsageException
dup
aload 0
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
aload 0
invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
areturn
2: StackMap locals:
StackMap stack:
aload 0
instanceof java.lang.IllegalArgumentException
ifeq 4
3: new org.springframework.dao.InvalidDataAccessApiUsageException
dup
aload 0
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
aload 0
invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
areturn
4: StackMap locals:
StackMap stack:
aload 0
instanceof javax.persistence.EntityNotFoundException
ifeq 6
5: new org.springframework.orm.jpa.JpaObjectRetrievalFailureException
dup
aload 0
checkcast javax.persistence.EntityNotFoundException
invokespecial org.springframework.orm.jpa.JpaObjectRetrievalFailureException.<init>:(Ljavax/persistence/EntityNotFoundException;)V
areturn
6: StackMap locals:
StackMap stack:
aload 0
instanceof javax.persistence.NoResultException
ifeq 8
7: new org.springframework.dao.EmptyResultDataAccessException
dup
aload 0
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
iconst_1
aload 0
invokespecial org.springframework.dao.EmptyResultDataAccessException.<init>:(Ljava/lang/String;ILjava/lang/Throwable;)V
areturn
8: StackMap locals:
StackMap stack:
aload 0
instanceof javax.persistence.NonUniqueResultException
ifeq 10
9: new org.springframework.dao.IncorrectResultSizeDataAccessException
dup
aload 0
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
iconst_1
aload 0
invokespecial org.springframework.dao.IncorrectResultSizeDataAccessException.<init>:(Ljava/lang/String;ILjava/lang/Throwable;)V
areturn
10: StackMap locals:
StackMap stack:
aload 0
instanceof javax.persistence.QueryTimeoutException
ifeq 12
11: new org.springframework.dao.QueryTimeoutException
dup
aload 0
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
aload 0
invokespecial org.springframework.dao.QueryTimeoutException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
areturn
12: StackMap locals:
StackMap stack:
aload 0
instanceof javax.persistence.LockTimeoutException
ifeq 14
13: new org.springframework.dao.CannotAcquireLockException
dup
aload 0
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
aload 0
invokespecial org.springframework.dao.CannotAcquireLockException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
areturn
14: StackMap locals:
StackMap stack:
aload 0
instanceof javax.persistence.PessimisticLockException
ifeq 16
15: new org.springframework.dao.PessimisticLockingFailureException
dup
aload 0
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
aload 0
invokespecial org.springframework.dao.PessimisticLockingFailureException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
areturn
16: StackMap locals:
StackMap stack:
aload 0
instanceof javax.persistence.OptimisticLockException
ifeq 18
17: new org.springframework.orm.jpa.JpaOptimisticLockingFailureException
dup
aload 0
checkcast javax.persistence.OptimisticLockException
invokespecial org.springframework.orm.jpa.JpaOptimisticLockingFailureException.<init>:(Ljavax/persistence/OptimisticLockException;)V
areturn
18: StackMap locals:
StackMap stack:
aload 0
instanceof javax.persistence.EntityExistsException
ifeq 20
19: new org.springframework.dao.DataIntegrityViolationException
dup
aload 0
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
aload 0
invokespecial org.springframework.dao.DataIntegrityViolationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
areturn
20: StackMap locals:
StackMap stack:
aload 0
instanceof javax.persistence.TransactionRequiredException
ifeq 22
21: new org.springframework.dao.InvalidDataAccessApiUsageException
dup
aload 0
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
aload 0
invokespecial org.springframework.dao.InvalidDataAccessApiUsageException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
areturn
22: StackMap locals:
StackMap stack:
aload 0
instanceof javax.persistence.PersistenceException
ifeq 24
23: new org.springframework.orm.jpa.JpaSystemException
dup
aload 0
invokespecial org.springframework.orm.jpa.JpaSystemException.<init>:(Ljava/lang/RuntimeException;)V
areturn
24: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 ex Ljava/lang/RuntimeException;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
ex
public static void closeEntityManager(javax.persistence.EntityManager);
descriptor: (Ljavax/persistence/EntityManager;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
ifnull 9
1: aload 0
invokeinterface javax.persistence.EntityManager.isOpen:()Z
ifeq 9
2: aload 0
invokeinterface javax.persistence.EntityManager.close:()V
3: goto 9
4: StackMap locals:
StackMap stack: javax.persistence.PersistenceException
astore 1
start local 1 5: getstatic org.springframework.orm.jpa.EntityManagerFactoryUtils.logger:Lorg/apache/commons/logging/Log;
ldc "Could not close JPA EntityManager"
aload 1
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 1 6: goto 9
7: StackMap locals:
StackMap stack: java.lang.Throwable
astore 1
start local 1 8: getstatic org.springframework.orm.jpa.EntityManagerFactoryUtils.logger:Lorg/apache/commons/logging/Log;
ldc "Unexpected exception on closing JPA EntityManager"
aload 1
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 1 9: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 em Ljavax/persistence/EntityManager;
5 6 1 ex Ljavax/persistence/PersistenceException;
8 9 1 ex Ljava/lang/Throwable;
Exception table:
from to target type
1 3 4 Class javax.persistence.PersistenceException
1 3 7 Class java.lang.Throwable
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
em
}
SourceFile: "EntityManagerFactoryUtils.java"
NestMembers:
org.springframework.orm.jpa.EntityManagerFactoryUtils$TransactionScopedEntityManagerSynchronization org.springframework.orm.jpa.EntityManagerFactoryUtils$TransactionalEntityManagerSynchronization
InnerClasses:
private TransactionScopedEntityManagerSynchronization = org.springframework.orm.jpa.EntityManagerFactoryUtils$TransactionScopedEntityManagerSynchronization of org.springframework.orm.jpa.EntityManagerFactoryUtils
private TransactionalEntityManagerSynchronization = org.springframework.orm.jpa.EntityManagerFactoryUtils$TransactionalEntityManagerSynchronization of org.springframework.orm.jpa.EntityManagerFactoryUtils