Po asi 3 hodinách hrozného ladění už vím, co se děje. Mám metodu na úrovni služeb, na kterou mám také radu „okolo“. Metoda na úrovni služby je označena @Transactional(readOnly=true)
, nicméně ve své radě mám další službu, která byla annotated with @Transactional(readOnly=false)
.
Můj aspekt (nebo rada) používá stejné objekty DAO jako moje normální servisní vrstva, takže když jsem zavolal sessionFactory.getCurrenctSession()
vrací mi to relaci, která byla vytvořena pro moji metodu na úrovni služby pouze pro čtení. Teď musím předělat architekturu.