Dans un plugin Grails 1.1, je suis en train de charger une classe de l'application principale en utilisant le code suivant:charge classe d'application de plug-in
class MyClass {
static Map getCustomConfig(String configName){
return new ConfigSlurper().
parse(ApplicationHolder.application.classLoader.loadClass(configName))
}
}
Où configName
est le nom de la classe dans $MAIN_APP/grails-app/conf
contenant le informations de configuration. Toutefois, lorsque le code ci-dessus s'exécute dans un test unitaire applicationHolder.application
renvoie null, provoquant la méthode ci-dessus pour lancer un NullPointerException
. Un Grails JIRA issue a été créé pour ce problème, mais il a été marqué comme fixe malgré le fait que le problème semble toujours exister.
Je sais que dans la classe du descripteur de plugin je peux accéder à l'application principale (une instance de GrailsApplication
) via la variable implicite application
. Mais le code ci-dessus n'est pas dans le descripteur du plugin.
Existe-t-il un moyen de charger une classe à partir de l'application principale dans un plugin (mais en dehors du descripteur de plugin)?
Merci, Don