Spring setter在解析参数时不执行

Spring setter在解析参数时不执行,spring,hibernate,grails,gorm,Spring,Hibernate,Grails,Gorm,我想创建TradePost域的一个对象。对于数据字段,我只传递grails操作中默认获得的参数 但是在解析时,根据grails文档,params映射到构造函数中,它应该为params中的所有这些属性调用setter。 但在我的例子中,setStatus enum不会执行 class TradePost { long id StatusEnum status //Used to get the status of post i.e Buy or Sell Strin

我想创建TradePost域的一个对象。对于数据字段,我只传递grails操作中默认获得的参数

但是在解析时,根据grails文档,params映射到构造函数中,它应该为params中的所有这些属性调用setter。 但在我的例子中,setStatus enum不会执行

class TradePost {

    long id
    StatusEnum status    //Used to get the status of post i.e Buy or Sell
    String location
    String currency

    public void setStatus(String key)
    {
        println "cAlledgggggggggggggggggggggggggggggg"+key
        this.status=StatusEnum.getStatus(key)
    }
}
并调用我创建的对象

user.tradePosts.add(new TradePost(params))

它应该调用status属性的setter,但不调用。

只是做了一个有根据的猜测,但我怀疑这是因为实现的方法签名与所调用的不匹配。e、 参数映射中的g setStatus vs setStatusSir为类型。因此,我将得到status:value。对于转换,我使用setter。是的,我意识到,然而,除了简单的属性赋值之外,还有很多事情要做。您确实有Grails来确保为您正确地转换数据类型。我怀疑这是对StatusEnum的攻击。