Saya memiliki aplikasi yang dikelola oleh pakar dengan dua modul: satu untuk persistensi, dan satu lagi untuk aplikasi web itu sendiri (gwt).
Pengujian saya dalam modul persistensi berfungsi dengan baik, tetapi, di aplikasi web, ketika saya menjalankan metode yang sama beberapa kali saya mendapatkan java.lang.IllegalStateException: Attempting to execute an operation on a closed EntityManager.
.
Saya menggunakan guice-persist untuk memasukkan manajer entitas ke dalam DAO saya, dan semua metode DAO saya memiliki anotasi @Transactional
.
Di aplikasi web saya, saya meletakkan: public class ScuvServletModule extends ServletModule {
@Override
protected void configureServlets() {
super.configureServlets();
install(MyPersistenceAPI.getModule()); // return my module and install it
filter("/*").through(PersistFilter.class);
/// another bindings...
}
}
Jika saya menghapus PersistFilter
, itu tidak berfungsi, tetapi secara acak memunculkan pengecualian Transaksi Tertutup atau sesuatu seperti itu.
Ada bantuan?