有人知道GORM的自定义侦听器是如何工作的吗?我如何实例化一个? 我正在使用Grails 2.0.1,文档在这个主题上完全没用。 我无法注册我的监听器,因为我需要数据存储来创建它,我不知道如何检索它。
解决了! 如果有人遇到同样的问题,我会写出解决方案。 要添加侦听器,我以这种方式扩展了类 org.grails.datastore.mapping.engine.event.PersistenceEventListener
class MyCustomListener implements PersistenceEventListener{
@Override
public boolean supportsEventType(Class<? extends ApplicationEvent> event) {
return ValidationEvent.class.isAssignableFrom(event)
}
@Override
public boolean supportsSourceType(Class<?> clazz) {
return true
}
@Override
public void onApplicationEvent(ApplicationEvent event) {
log.debug 'My custom listener!'
}
@Override
public int getOrder() {
return DEFAULT_ORDER;
}
}