Selamlar, hibernate ile dışarıdan thread'a verdiğim entity'nin oneToMany olan bir relation'ini lazy olarak almaya çalışıyorum. Malumunuz hibernate'in session'i thread-safe olmadığı için kodda işaretlediğim noktada null pointer exception alıyorum.
Bunu önlemek icin generate metodunda dışarıdan aldığım Brand nesnesini yeni bir hibernate session'i açarak load ediyorum ve bunun yanlış bir yaklaşım olduğunu düşünüyorum.
Sorularım:
1 - thread içinde yeni bir session acmadan dışarda oluşan bir sessionla gelen entity'nin OneToMany propertysine nasıl erişirim ?
2 - Eğer 1. soruda sorduğum işlemi yapamaycaksam, yeniden db'ye gitmeden thread-safe olarak entity'nin OneToMany propertysini nasil alırım ?
3 - Bu bir concurrent uygulama oldugu icin thread-pool'un ne zaman kapanacagini bilmiyorum, dolayısı ile Hibernate SessionFactory'i shutdown edemiyorum. Kapatma işlemini nasil yapabilirim ? (Aklıma gelen ScheduledExecutorService ile 10 15 dakikada bir pool'un durumunu sorgulayip pool tamamen kapandi ise SessionFactory'ide kapatmak)