Сериализировать экземпляр домена с внедренной службой?

У меня есть объект домена, который отслеживает пользователя, который создал, удалил и изменил его с помощью внедренной службы безопасности Spring, def springSecurityService. Экземпляры этих объектов сохраняются в сеансе, а в рабочей среде сеанс сохраняется в базе данных для аварийного переключения сеанса. Класс хранения сеанса Jetty сериализует объекты в сеансе, но выдает исключение, если сеанс содержит несериализуемый объект, которым не является springSecurityService. Есть ли способ пометить экземпляр springSecurityService как проигнорированный, transient может быть, но все еще иметь доступ к service? Я старался.

static transients = ['springSecurityService']

не помогло.


person user1452701    schedule 02.10.2017    source источник


Ответы (1)


Попробуйте использовать,

transient SpringSecurityService springSecurityService
static transients = ['springSecurityService']

Первый оператор говорит Java не сериализовать; тогда как второй говорит Grails не сохраняться.

Примечание. Между прочим, внедрение сервиса в класс домена не рекомендуется. .

person Adeel Ansari    schedule 03.10.2017