Groovy / Grails - How to get class instance from String?
class, grails, groovy
Solution
The Grails way would be to use GrailsApplication#getArtefact. e.g.,
def domainInstance = grailsApplication.getArtefact("Domain",domainName)?.
getClazz()?.get(1)
The advantage of doing it this way as opposed to `Class.forName` is that if there is no domain class with that name, `getArtefact` just returns null instead of throwing an exception.
Problem
I'm trying to derive the class instance of a groovy class from the name of string. For example, I'd like to do some code along these lines: ``` def domainName domainName = "Patient" // but following line doesn't work, domainName is a String def domainInstance = domainName.get(1); ```