2011-01-17 10 views
0

Ich habe ein Problem mit meinem Programm.Problem mit Iteration und Set

Wenn ich das Programm ausführen:

CourseMaterial crsmPrint = new CourseMaterial(); 

Iterator<CourseMaterial> itPrint = trs.getAllTrainerCourseMaterial(Integer.parseInt(request.getSession().getAttribute("id").toString())).iterator(); 

while (itPrint.hasNext()){ 
    crsmPrint = itPrint.next(); 
    Lecture lctPrint = new Lecture(); 
    Iterator<Lecture> itLctPrint = trs.getAllLecture(crsmPrint.getId()).iterator(); 
    while(itLctPrint.hasNext()){ 
     lctPrint = itLctPrint.next(); 
     out.print("<option>"+lctPrint.getId()+"</option>"); 
    } 
} 

Der Fehler ist:

failed to lazily initialize a collection of role: lesson.domain.CourseMaterial.lectures, no session or session was closed 

Es gibt ein Problem in meinem Code?

Dank

Antwort

2

Scheint, wie Sie ORM in Ihrer Anwendung verwenden und Vorlesungen konfiguriert lazily geladen werden. Sie können entweder die Konfiguration ändern, um sie zu laden, oder die Vorlesung in einer Transaktion wiederholen.

+0

Ich würde auch zwei foreach Schleifen empfehlen, weil es den Code sauber lässt. –