Jedno z možných řešení výjimky LazyInitializationException v Hibernate

publikováno: 8.5.2013

Také Vás trápí výjimka typu LazyInitializationException když používáte Hibernate a v prezentační vrstvě používáte entity? Pokud používáte Spring, pak pro Vás mám jedno z možných řešení a to je rozšíření transakce až na úroveň prezentační vrstvy. Do Servlet context konfiguračního souboru Springu jednoduše přidejte:

<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/*" />
<bean
class="org.springframework.orm.jpa.support.OpenEntityManagerInViewInterceptor">
<property name="entityManagerFactory" ref="myEmf" />
</bean>
</mvc:interceptor>
</mvc:interceptors>

 

Poznámka: Také existuje třída OpenSessionInViewInterceptor, která umí to samé když používáte Hibernate-specifickou konfiguraci ve Springu.

Reference

Splnilo to mé očekávání si zopakovat základy Spring framework. Je vidět že školení je dobře připravené, že tomu co školíte rozumíte, že vás to baví, vysvětlíte principy a je dobře

Petr

Podavane informace byly aktualni, byly vysvetlene i souvislosti, hlavne na uvod byl dobre vysvetlen kontext probiraneho tematu, teda co je co a jaky to ma vyznam. Navic bylo cele skoleni podporeno

Petr

Líbily se mi "informační odskoky" k jiným knihovnám (např. Lombok), pro lidi zakonzervované 100 let na jednom projektu osvěžující.

Vojtěch


Novinky

20.2.2019: JIB 1.0

20.2.2019: Amazon Corretto 11
Amazon Corretto 11 je venku!

7.2.2019: Docker + Raspberry Pi + Java
Jak použít OpenJDK 11+ na Raspberry Pi s Dockerem