Montag, 24. Mai 2010

refactor acegi domain & controller classes

Das Grails ACEGI-Plugin erstellt alle Klassen außerhalb des eigenen Packages.
Beim Versuch die automatisch generierten Klassen in ein anderes Package zu verschieben kam ich auf folgenden, kaum aussagekräftigen Fehler: java.lang.NullPointerException: Cannot invoke method list() on null object

Die Lösung ist einfach aber für den Grails-Anfänger nicht offensichtlich :)
In der SecurityConfig.groovy müssen die Klassennamen mit einem Prefix des Packagenamen versehen werden.

loginUserDomainClass = 'meinPackageName.User'
authorityDomainClass = 'meinPackageName.Role'
requestMapClass = 'meinPackageName.Requestmap'
Den Hinweis habe ich letzendlich in einer Grails-Mailinglist gefunden: http://www.pubbs.net/201001/grails/31521-grails-user-refactor-acegi-domain-classes-problem-solution.html

Keine Kommentare:

Kommentar veröffentlichen