/ / Grails 2.5 imposta l'origine dati sulla classe di servizio non funzionante: grails, gorm, grails-2.0

Grails 2.5 imposta l'origine dati sulla classe di servizio non funzionante: grails, gorm, grails-2.0

Ho più origini dati nella mia applicazionee voglio essere in grado di cambiare l'origine dati su una classe di servizio da quella di default a una diversa (in modo che corrisponda al mio dominio Grails). Per il documento che dichiara di utilizzare:

  static datasource = "dsName"

proprietà sulla classe di servizio, che ho fatto. Tuttavia, mainTransactionManager utilizza ancora la mia origine dati predefinita.

Riesco a vedere nel ChainedTransactionManager che chiama:

MultiTransactionStatus mts = new MultiTransactionStatus(transactionManagers.get(0));

L'indice 0 all'interno di transactionManagers contiene la mia origine dati predefinita ... quindi come faccio garantire che non usa il gestore delle transazioni che contiene l'origine dati predefinita?

Dove / quando Grails legge il

static datasource = "..."

proprietà?

Fondamentalmente voglio solo allineare la mia origine dati tra i miei servizi e i miei domini.

risposte:

1 per risposta № 1

Dove / quando Grails legge il static datasource = "..."

Quella proprietà è letta a https://github.com/grails/grails-core/blob/bd7cc10e17d34f20cedce979724f0e3bacd4cdb4/grails-plugin-services/src/main/groovy/org/codehaus/groovy/grails/plugins/services/ServicesGrailsPlugin.groovy#L74

Questo sta invocando il getDatasource metodo a https://github.com/grails/grails-core/blob/bd7cc10e17d34f20cedce979724f0e3bacd4cdb4/grails-core/src/main/groovy/org/codehaus/groovy/grails/commons/DefaultGrailsServiceClass.java#L40.