Na ongeveer 3 uur vreselijk debuggen weet ik nu wat er aan de hand is. Ik heb een service-level methode waar ik ook een "rond" advies over heb. De methode op serviceniveau is geannoteerd met @Transactional(readOnly=true)
, ik heb echter een andere service in mijn advies die is annotated with @Transactional(readOnly=false)
.
Mijn aspect (of advies) is het gebruik van dezelfde DAO-objecten als mijn normale servicelaag, dus toen ik sessionFactory.getCurrenctSession()
aanriep het geeft me de sessie terug die is gemaakt voor mijn alleen-lezen service-niveaumethode. Nu moet ik opnieuw ontwerpen.