Setelah sekitar 3 jam debugging yang mengerikan, saya sekarang tahu apa yang terjadi. Saya memiliki metode tingkat layanan yang saya juga memiliki saran "sekitar". Metode tingkat layanan dijelaskan dengan @Transactional(readOnly=true)
, namun, saya memiliki layanan lain dalam saran saya yang annotated with @Transactional(readOnly=false)
.
Aspek saya (atau saran) menggunakan objek DAO yang sama dengan lapisan layanan normal saya, jadi ketika saya memanggil sessionFactory.getCurrenctSession()
itu memberi saya kembali sesi yang dibuat untuk metode tingkat Layanan Hanya-Baca saya. Sekarang, saya harus mendesain ulang.