Hirdetés

Új hozzászólás Aktív témák

  • togvau

    senior tag

    Ezt meg tudja nekem valaki magyarázni?

    JSF frontend, springboot-mvc-data backend. Júzer módosító felületen, egy @PostConstruct init metódus van, ami betölti a júzer listát, egy @Autowired @Service metódust hívva, ami Crudrepositoryt hív.

    Ez rendben is megy. Módosítok a felületen (jelszó változtatás), ami hasonlóképpen történik, de hogy a változások rögtön látszódjanak, a JSF managedbean (ami a spring miatt inkább @Component) metódusa ami a servicet meghívja, az újra meghívja az initet, ami szintén, csak a lekérdezést.

    Ez megint oké. De ha 2. alkalommal is módosítok valamit, akkor hibernate lazyinitialization exceptionnal elszáll, és mindig ugyan ez lesz ezen túl, ha reloadolom az oldalt, akkor is.
    Ha nem megyek el eddig a 2. módosításig, vagy előtte reloadolom az oldalt, nincs ilyen probléma. Akárhányszor nyomogathatom az újratöltést, annyiszor lekérdez, nincs lazy probléma.

    Mindegyik service metódus javax.transaction. @Transactional

    A furcsaság amit itt észrevettem, hogy az első módosítás utáni frissítésnél, ha a managedbean metódus hívja meg az initet, akkor csak a fő tábla selectje megy le, az ahhoz kapcsolódó entityké nem. De ha böngészőben reloadot nyomok, akkor kapcsolódókat is selecteli.
    Ugyan az a metódus 2 féle képpen működik? :F

    [ Szerkesztve ]

    hitler, sztálin, micro usb

Új hozzászólás Aktív témák