Grails GORM:如何在嵌入式域上进行反思?

时间:2014-10-16 11:36:34

标签: grails gorm

我想对Domain关联做反思,为RESTful WS(脚手架)自动生成JSON / XML格式类描述符文件。

示例域名是:

class Roof {
    Chimney chimney = new Chimney() 
    static embedded = ['chimney']
}

class Chimney {
    float height
}

我正在使用此代码来了解GORM类类型:

GrailsDomainClassPersistentEntity entity = Roof.gormPersistentEntity

entity?.persistentProperties.each { PersistentProperty property ->
    Class<?> cl = property.getType()
}

当属性是关联时,cl变量获取关联域的类。当关联是标准的hasOne或hasMany时,这非常有效。我发现的问题是,当嵌入属性时,类的类型会导致org.codehaus.groovy.grails.commons.DefaultGrailsDomainClassProperty。

我不知道另一种方法来发现这个被盗的财产。任何posibilitity(嵌入式静态属性......等)?

编辑:

Embedded e = property
e.getAssociatedEntity() //null

1 个答案:

答案 0 :(得分:0)

检查域类的embedded字段的值并扫描类属性&#39;比赛名称