У меня есть следующая проблема с Hibernate:
У меня есть два класса:
1) Справоздание
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.mg.shared.Sprawozdanie" table="sprawozdania">
<id column="spr_id" name="id" type="int">
<generator class="increment"/>
</id>
<property column="spr_od" generated="never" lazy="false" name="Od" type="date"/>
<property column="spr_do" generated="never" lazy="false" name="Do" type="date"/>
<property column="spr_typ_okresu" generated="never" lazy="false"
name="TypOkresu" type="string"/>
<property column="spr_kurs" generated="never" lazy="false" name="Kurs" type="float"/>
<property column="spr_dsp_nazwa" generated="never" lazy="false"
name="NazwaDysponenta" type="string"/>
<property column="spr_dsp_adres" generated="never" lazy="false"
name="AdresDysponenta" type="string"/>
<property column="spr_dsp_regon" generated="never" lazy="false"
name="RegonDysponenta" type="string"/>
<property column="spr_dsp_wojew_kod" generated="never" lazy="false"
name="KodWojDysponenta" type="string"/>
<property column="spr_dsp_wojew_nazwa" generated="never" lazy="false"
name="NazwaWojDysponenta" type="string"/>
<property column="spr_dsp_powiat_kod" generated="never" lazy="false"
name="KodPowiatDysponenta" type="string"/>
<property column="spr_dsp_powiat_nazwa" generated="never" lazy="false"
name="NazwaPowiatDysponenta" type="string"/>
<property column="spr_dsp_gmina_kod" generated="never" lazy="false"
name="KodGminaDysponenta" type="string"/>
<property column="spr_dsp_gmina_nazwa" generated="never" lazy="false"
name="NazwaGminaDysponenta" type="string"/>
<property column="spr_dsp_typ_gminy_kod" generated="never"
lazy="false" name="KodTypGmDysponenta" type="string"/>
<property column="spr_dsp_typ_gminy_nazwa" generated="never"
lazy="false" name="NazwaTypGmDysponenta" type="string"/>
<property column="spr_dsp_zwiazek_jst_kod" generated="never"
lazy="false" name="KodZwJTSDysponenta" type="string"/>
<property column="spr_dsp_typ_zwt_kod" generated="never" lazy="false"
name="KodTypZwDysponenta" type="string"/>
<property column="spr_dsp_instytucja_nadrzedna" generated="never"
lazy="false" name="InstytucjaNadrzednaDysponenta" type="string"/>
<property column="spr_dsp_nazwa_waluty" generated="never" lazy="false"
name="NazwaWalutyDysponenta" type="string"/>
<property column="spr_dsp_symbol_waluty" generated="never"
lazy="false" name="SymbolWalutyDysponenta" type="string"/>
<property column="spr_stan" generated="never" lazy="false" name="Stan" type="string"/>
<property column="spr_data_utworzenia" generated="never" lazy="false"
name="DataUtworyenia" type="date"/>
<property column="spr_data_zaakceptowania" generated="never"
lazy="false" name="DataYaakceptowania" type="date"/>
<property column="spr_data_zatwierdzenia" generated="never"
lazy="false" name="DataYatwierdyenia" type="date"/>
<property column="spr_data_odrzucenia" generated="never" lazy="false"
name="DataOdryucenia" type="date"/>
<property column="spr_data_edycji" generated="never" lazy="false"
name="DataEdycji" type="date"/>
<many-to-one class="com.mg.spr.shared.User" column="spr_uz_login"
lazy="false" name="Uzytkownik" update="false"/>
<many-to-one class="com.mg.spr.shared.Officer" column="spr_dsp_id"
lazy="false" name="Dysponent" update="false"/>
<many-to-one class="com.mg.spr.shared.TypSprawozdania" column="spr_typ_spr_nazwa"
lazy="false" name="TypSpr" update="false"/>
<set name="PozycjeSprawozdania" table="pozycje_sprawozdan" cascade="all" lazy="false" >
<key column="pspr_spr_id" not-null="true" update="true"/>
<one-to-many class="com.mg.shared.PozycjaSprawozdania" />
</set>
</class>
</hibernate-mapping>
2) PozycjaSprawozdania
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.mg.shared.PozycjaSprawozdania" table="pozycje_sprawozdan">
<id column="pspr_id" name="id" type="int">
<generator class="increment"/>
</id>
<property column="pspr_nr_tabeli" generated="never" lazy="false" name="NrTabeli" type="int"/>
<property column="pspr_nr_wiersza" generated="never" lazy="false" name="NrWiersza" type="int"/>
<property column="pspr_dzi_kod" generated="never" lazy="false"
name="DzialKod" type="string"/>
<property column="pspr_roz_kod" generated="never" lazy="false"
name="RozdzialKod" type="string"/>
<property column="pspr_par_kod" generated="never" lazy="false"
name="ParagrafKod" type="string"/>
<property column="pspr_par_typ" generated="never" lazy="false"
name="ParagrafTyp" type="string"/>
<property column="pspr_zad_kod" generated="never" lazy="false"
name="ZadanieKod" type="string"/>
<property column="pspr_zfin_kod" generated="never" lazy="false"
name="ZrodloFinansowaniaKod" type="string"/>
<property column="pspr_dzi_nazwa" generated="never" lazy="false"
name="DzialNazwa" type="string"/>
<property column="pspr_roz_nazwa" generated="never" lazy="false"
name="RozdzialNazwa" type="string"/>
<property column="pspr_par_nazwa" generated="never" lazy="false"
name="ParagrafNazwa" type="string"/>
<property column="pspr_zad_nazwa" generated="never" lazy="false"
name="ZadanieNazwa" type="string"/>
<property column="pspr_zfin_nazwa" generated="never" lazy="false"
name="ZrodloFinansowaniaNazwa" type="string"/>
<property column="pspr_kolumna_01" generated="never" lazy="false"
name="Kolumna01" type="string"/>
<property column="pspr_kolumna_02" generated="never" lazy="false"
name="Kolumna02" type="string"/>
<property column="pspr_kolumna_03" generated="never" lazy="false"
name="Kolumna03" type="string"/>
<property column="pspr_kolumna_04" generated="never" lazy="false"
name="Kolumna04" type="string"/>
<property column="pspr_kolumna_05" generated="never" lazy="false"
name="Kolumna05" type="string"/>
<property column="pspr_kolumna_06" generated="never" lazy="false"
name="Kolumna06" type="string"/>
<property column="pspr_kolumna_07" generated="never" lazy="false"
name="Kolumna07" type="string"/>
<property column="pspr_kolumna_08" generated="never" lazy="false"
name="Kolumna08" type="string"/>
<property column="pspr_kolumna_09" generated="never" lazy="false"
name="Kolumna09" type="string"/>
<property column="pspr_kolumna_10" generated="never" lazy="false"
name="Kolumna10" type="string"/>
<property column="pspr_kolumna_11" generated="never" lazy="false"
name="Kolumna11" type="string"/>
<property column="pspr_kolumna_12" generated="never" lazy="false"
name="Kolumna12" type="string"/>
<property column="pspr_kolumna_13" generated="never" lazy="false"
name="Kolumna13" type="string"/>
<property column="pspr_kolumna_14" generated="never" lazy="false"
name="Kolumna14" type="string"/>
<property column="pspr_kolumna_15" generated="never" lazy="false"
name="Kolumna15" type="string"/>
<property column="pspr_kolumna_16" generated="never" lazy="false"
name="Kolumna16" type="string"/>
<property column="pspr_kolumna_17" generated="never" lazy="false"
name="Kolumna17" type="string"/>
<property column="pspr_kolumna_18" generated="never" lazy="false"
name="Kolumna18" type="string"/>
<property column="pspr_kolumna_19" generated="never" lazy="false"
name="Kolumna19" type="string"/>
<property column="pspr_kolumna_20" generated="never" lazy="false"
name="Kolumna20" type="string"/>
<property column="pspr_kolumna_21" generated="never" lazy="false"
name="Kolumna21" type="string"/>
<property column="pspr_kolumna_22" generated="never" lazy="false"
name="Kolumna22" type="string"/>
<property column="pspr_kolumna_23" generated="never" lazy="false"
name="Kolumna23" type="string"/>
<property column="pspr_kolumna_24" generated="never" lazy="false"
name="Kolumna24" type="string"/>
<property column="pspr_kolumna_25" generated="never" lazy="false"
name="Kolumna25" type="string"/>
<property column="pspr_kolumna_26" generated="never" lazy="false"
name="Kolumna26" type="string"/>
<property column="pspr_kolumna_27" generated="never" lazy="false"
name="Kolumna27" type="string"/>
<property column="pspr_kolumna_28" generated="never" lazy="false"
name="Kolumna28" type="string"/>
<property column="pspr_kolumna_29" generated="never" lazy="false"
name="Kolumna29" type="string"/>
<property column="pspr_kolumna_30" generated="never" lazy="false"
name="Kolumna30" type="string"/>
<many-to-one class="com.mg.shared.Sprawozdanie" column="pspr_spr_id"
lazy="false" name="Sprawozdanie" update="false" insert="false"/>
</class>
</hibernate-mapping>
Я использую Jasperreports для генерации отчетов. Некоторые данные находятся в Sprawozdanie, а некоторые находятся в PozycjaSprawozdania. Когда я использую этот запрос:
listOfData = session.createQuery("Select spr from Sprawozdanie spr left join fetch spr.PozycjeSprawozdania").list();
Я получаю эту ошибку:
51142 [btpool0-2] ERROR org.hibernate.LazyInitializationException - failed to lazily initialize a collection, no session or session was closed