假设以下情况..
所以:
DataSource.groovy中
environments {
development {
dataSource {
[...]
}
dataSource_b {
[...]
}
dataSource_c {
[...]
}
}
}
ObjectA.groovy
class ObjectA{
[...]
static mapping = {
//use default datasource
}
}
ObjectB.groovy
class ObjectB{
[...]
static mapping = {
datasource 'b'
[...]
}
}
ObjectC.groovy
class ObjectC{
[...]
static mapping = {
datasource 'c'
[...]
}
}
MyService.groovy
public savingObjects(ObjectA a,ObjectB b,ObjectC c){
a.save()
b.save()
c.save()
}
我正在使用Grails 2.4.3并且我知道服务中的方法是Transaccional,但是,例如,如果我在保存时发生错误,那么' a' a'和' b'没有任何刷新保存(保存刷新:true)。
有任何想法纠正这种行为吗? 我想避免使用XA数据源。
谢谢!