Je crée une relation hasMany (théoriquement) simple au sein d'une classe de domaine. J'ai deux tables avec une relation de clé étrangère entre les deux. L'objet de domaine Tableau 1 est la suivante:Grails hasMany erreur de création de beans
Functionality{
String id
static hasMany = [functionalityControllers:FunctionalityController]
static mapping =
{
table 'schema.functionality'
id column:'FUNCTIONALITY_NAME', type:'string', generator:'assigned'
version false
}
}
et objet de domaine 2
FunctionalityController
{
String id
String functionalityName
String controllerName
static mapping =
{
table 'schema.functionality_controller'
id column:'id', type:'string', generator:'assigned'
version:false
}
}
La question que j'ai est que lorsque j'ai la ligne hasMany
à l'intérieur de l'objet de domaine Functionality
, l'application gagné » t commencer (à la fois l'application et les tests d'intégration). L'erreur est org.springframework.beans.factory.BeanCreationException
menant à Invocation of init method failed; nested exception is java.lang.NullPointerException
.
Toute aide serait appréciée. MISE À JOUR: * de travail Domaines *:
class Functionality {
String id
static hasMany = [functionalityConts:FunctionalityCont]
static mapping =
{
table 'schema.functionality'
id column:'FUNCTIONALITY_NAME', type: 'string', generator: 'assigned'
functionalityConts(column:'functionality_name')
version false;
}
}
et
class FunctionalityCont {
String id
String functionalityName
String controllerName
static belongsTo = [functionality: Functionality]
static contraints = {
}
static mapping =
{
table 'schema.functionality_controller'
id column:'id', type: 'string', generator: 'assigned'
functionality(column:'FUNCTIONALITY_NAME')
version false;
}
}
Avant cette réponse que j'avais changé FunctionalityController à FunctionalityCont sans changement . J'ai également essayé les étapes ci-dessus et j'obtiens une erreur différente que je signalerai dans la réponse de Gregg. – Joseph
Pas sûr à 100% si c'est la bonne réponse, car je pensais avoir essayé la même chose hier sans aucune chance. Il semble fonctionner comme prévu maintenant, avec et sans l'appartient à. – Joseph
Un dernier problème que j'ai: Le SQL qui est généré fait référence à une colonne inexistante. Comment puis-je spécifier la colonne/champ à utiliser? – Joseph