Grails 2 - Como chamar dinamicamente múltiplas fontes de dados
Eu tenho duas fontes de dados nomeadas no meu aplicativo Grails (Grails 2.0.3) ...
dataSource_a {
// ...
}
dataSource_b {
// ...
}
Gostaria de alterar dinamicamente a origem de dados que estou acessando, com base em algum tipo de parâmetro. Eupoderia faça algo assim ...
def findPeople(datasource) {
if (datasource == 'a') {
return Person.a.list()
} else if (datasource == 'b') {
return Person.b.list()
}
}
O que eu realmente esperava poder fazer é algo assim ...
def findPeople(datasource) {
return Person."$datasource".list()
}
Infelizmente, recebo um erro quando tento fazer isso. "Ocorreu um erro fatal ao aplicar transformações de consulta: nulo 1 erro".
Alguma idéia de como realizar isso? Ou eu só estou preso com / switch blocks?