- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- gban: Ingyen kellene, de tegnapra
- sziku69: Fűzzük össze a szavakat :)
- Gurulunk, WAZE?!
- sziku69: Szólánc.
- Mr Dini: Mindent a StreamSharkról!
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- kenand: Hol volt, hol nem volt, Thunderbolt...
Új hozzászólás Aktív témák
-
#39560925
törölt tag
Ha egy service layer-beli osztályban van egy @Transactional metódus, ami meghívja egy DAO osztály metódusát, amely osztályban be van injektálva egy EntityManager @PersistenceContext-tel, akkor ennek az EntityManagernek a perzisztenciakontextusa megmarad a hívó service layer-beli metódusban is?
Most kísérleti jelleggel azt csinálom, hogy a RestController osztály metódusát jelöltem @Transactional-nek és az közvetlen hívja a DAO osztály metódusát, ami egy MovieEntityvel tér vissza, de amikor a RestController metódusa átadja a Jackson JSON parsernek a MovieEntityt, akkor mintha már nem lenne meg a perzisztenciakontextus, mert a hibernate proxy objektum megszűnt, és nem éri el a kapcsolódó entitásokat:
com.fasterxml.jackson.databind.JsonMappingException: failed to lazily initialize a collection of role: com.movietime.model.ActorsEntity.movies, could not initialize proxy - no Session
Próbálkoztam azzal, hogy EAGER fetchinget állítok be minden Entitás osztályban, és akkor nem lenne ilyen probléma, de akkor a túl sok bi-directional many-to-many asszociáció miatt megbolondul a hibernate és a Query.getSingleResult() már vissza se tér.
Kerestem olyan megoldást is, hogy lehessen korlátozni az EAGER fetching mélységét, de csak olyat találtam, hogy a LAZY-t lehet optimalizálni @BatchSize-zal. Viszont ez nekem nem jó, mert a JSON parserig már nem jut el a hibernate sessionje, vagy persistence contextje, nem tudom hogy hívjam.
Csinálhatnám azt is, hogy a DAO rétegben olyan lekérdezéseket írok kézzel, hogy lekérem a filmet, aztán lekérem a hozzá kapcsolódó színészeket, producereket, mindenkit, és összetákolom a kapcsolatokat, de ez egyrészt nagyon lábbal hajtós, másrészt az adatbáziskapcsolattal nagyon pazarló lenne. Jobb lenne, ha ezt a hibernate elintézné.
Az is jó lenne, ha a @Transactional úgy működne, ahogy a hsz elején a kérdésben feltettem, de nekem úgy tűnik, mintha nem így történne. Lehet azért, mert nem JTA típusú tranzakcióim vannak, hanem JPA?
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Proxmox VE
- iPhone topik
- Formula-1 humoros
- One otthoni szolgáltatások (TV, internet, telefon)
- Melyik tápegységet vegyem?
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Temu
- Luck Dragon: Asszociációs játék. :)
- Kerékpárosok, bringások ide!
- Külföldi prepaid SIM-ek itthon
- További aktív témák...
- BeQuiet! GAMER alap! i9-14900K / Z790 / 32GB 6000MHz / 2TB Gen4 / 1000w Gold! BeszámíTOK
- SteelSeries Arctis Nova PRO PC-Xbox headset + GameDAC GEN 2 + fülpárnák
- HifiMan Arya Organic gyári fejhallgatókábel (6,3mm jack - 2x3,5mm jack) 1,5m
- iPad Pro 11 (M5) Wifi + Cellular 256GB (Bontatlan) 1 éb garancia
- Eladó Asus ROG Nuc15 (2025) - Ultra 9 275HX, RTX 5070 Ti Laptop, 32GB/1TB, hibátlan, magyar garis
- BESZÁMÍTÁS! LENOVO ThinkPad P15 Gen 2 munkaállomás - i7 11800H 32GB DDR4 512GB SSD Quadro T1200 W11
- BESZÁMÍTÁS! GIGABYTE A520M R5 5500 16GB DDR4 512GB SSD RX 5600 XT 6GB Rampage SHIVA Adata 600W
- AKCIÓ!!!! Dell Precision 3571 4G LTE i7-12700H 16GB 512GB FHD RTX A1000 4GB 1 év teljeskörű garancia
- BESZÁMÍTÁS! Gigabyte Vision OC RTX 3080 10GB videokártya garanciával hibátlan működéssel
- Használt Hikity SH3AM5HI Carplay és Android Auto multimédia kijelző / 12 hó működési garancia
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest

