使用注入的服务序列化域实例?

Serialize Domain instance with service injected?

我有一个域对象,它使用注入的 Spring 安全服务 def springSecurityService 跟踪创建、删除和修改它的用户。这些对象的实例保存在会话中,并且在生产中会话被持久保存到数据库以进行会话故障转移。 Jetty 会话存储 class 序列化会话中的对象,但如果会话包含不可序列化的对象而 springSecurityService 则不是,则抛出异常。有没有办法将 springSecurityService 实例标记为已忽略,transient 可能是,但仍然可以访问 service?我试过了。

static transients = ['springSecurityService']

没有帮助。

尝试使用,

transient SpringSecurityService springSecurityService
static transients = ['springSecurityService']

第一条语句告诉Java,不要序列化;而第二个告诉 Grails 不要坚持。

注意: 顺便说一句,在域 class 中注入服务是 discouraged.