Привет всем, я создаю приложение GRAILS с отношением am: m db.Когда я пытаюсь показать записи, появляется известная ошибка "не удалось лениво инициализировать коллекцию ролей ... ни один сеанс или сеанс не был закрыт".
Один класс:
class Hazzard{
static hasMany = [warning:Warning]
static constraints = {
text(size:1..5000)
}
String name
String text
String toxicity
}
другое:
class Warning{
static hasMany = [hazzard:Hazzard]
static belongsTo = Hazzard
static constraints = {
text(size:1..5000)
}
String code
String text
}
В Hazzard / show следующий код работает нормально
<g:each in="${hazzardInstance.warning}" var="p">
<li><g:link controller="Warning" action="show" id="${p.id}">${p?.encodeAsHTML()}</g:link></li>
</g:each>
, но на других страницах следующий код выдаст ошибку:
<g:set var="haz" value="${Hazzard.get(params.id)}" />
<h1>${haz.name}</h1>
<p>${haz.text}</p>
<h1>Toxiciteit</h1>
<p>${haz.toxicity}</p>
<br/>
<h1>Gevaren(H) en voorzorgen(P)</h1>
<g:each in="${haz.warning}" var="p"> --> This is where the error pops-up
${p.text}
</g:each>
Есть какие-нибудь подсказки, где это терпит неудачу?