Im InvocationHandler habe ich folgenden Code:
Im Log finde ich folgendes:
Kann mir das jemand erklären? Ich sehe nicht wie es sein kann, dass nach "End Comm1: 17" wieder "Begin Comm1: 17" kommt, ohne dass dazwischen ein "Begin Meth1: 17" steht.
Java:
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
Object ret = null;
Transaction transaction = transactionFactory.createTransaction();
try {
transaction.begin();
System.out.println("Begin Meth1: " + Thread.currentThread().getId());
ret = method.invoke(delegate, args);
System.out.println("Begin Comm1: " + Thread.currentThread().getId());
transaction.commit();
System.out.println("End Comm1: " + Thread.currentThread().getId());
} catch (Throwable t) {
transaction.rollback();
throw t;
}
return ret;
}
Im Log finde ich folgendes:
Java:
Begin Comm1: 17
16:21:30,953 DEBUG JDBCTransaction:134 - commit
16:21:30,953 DEBUG JDBCTransaction:147 - committed JDBC Connection
16:21:30,953 DEBUG ConnectionManager:427 - aggressively releasing JDBC connection
16:21:30,953 DEBUG ConnectionManager:464 - releasing JDBC connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]
End Comm1: 17
Begin Comm1: 17
Exception in thread "AWT-EventQueue-0" org.hibernate.SessionException: Session is closed!
Kann mir das jemand erklären? Ich sehe nicht wie es sein kann, dass nach "End Comm1: 17" wieder "Begin Comm1: 17" kommt, ohne dass dazwischen ein "Begin Meth1: 17" steht.