Я использую Grails 1.3.7 с плагином аудита. Я хочу зафиксировать событие входа пользователя, например, «user: PSam вошел в систему ..» в журналах, и так как для плагина не определено событие onLoad
, я добавляю его в классы домена и заполняю свою собственную запись таблицы аудита в этом событие.
Таким образом, в пользовательском домене Grails класс я делаю следующим образом
def onLoad = {
try {
Graaudit aInstance = new Graaudit();
aInstance.eventType= "User Log in"
aInstance.eventDescription = "User logged in"
aInstance.user_id = username
aInstance.save(flush:true);
println "username="+username
println aInstance;
}
catch (e){
println(e.getMessage())
}
}
У меня тут две проблемы ...
1) свойство username, определенное в этом доменном классе в качестве атрибута, становится пустым
2) выдает исключение, говорящее: No Hibernate Session bound to thread, and configuration does not allow creation of non-transactional one here
Есть ли здесь другой подход?
а также можете использовать таблицу audi_log плагинов для заполнения записей о моих событиях onLoad ()?
Заранее спасибо