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

Skoleni bylo kazdopadne prinosne, i kdyz ve Springu uz chvilku delam, dodalo mi to kontext a hlubsi porozumeni. Libil se mi i prehled dalsich frameworku, jejich prakticke vyuziti a ze

Daniela

Se školením jsem byl naprosto spokojen. Výborný poměr teorie a praxe. Vypíchl bych i přístup školitele k probírané problematice, znalosti a zkušenosti. Je vidět, že Jirka je velký fanoušek Javy

Václav

Velmi se mi líbila přátelská a neformální atmosféra a viditelné nadšení a zapojení přednášejícího do problematiky a tudíž skutečně zajímavé příklady z praxe a možnost zeptat se prakticky na jakoukoliv

Ondřej


Novinky

16.11.2017: Java 9 přednáška
Na JavaDays 2017 jsem měl přednášku na téma Java 9, o kterou bych se rád podělil

26.9.2017: RebelLabs Developer Productivity Report 2017
Další rok, další RebelLabs report :-)

14.9.2017: Java release cycle zrychluje & Java Flight Recorder zdarma
Dlouhé mnohaleté prodlevy mezi jednotlivými major releasy v Javě končí!