grails - Grails对象不是声明类的实例

标签 grails groovy gorm

我对条件进行操作时收到以下错误。请帮助。

错误:

2012-12-02 19:50:43,678 [http-8080-2] ERROR property.BasicPropertyAccessor  - IllegalArgumentException in class: indiaweatherstation.WeatherStation, getter method of property: id
2012-12-02 19:50:43,683 [http-8080-2] ERROR errors.GrailsExceptionResolver  - Exception occurred when processing request: [GET] /IndiaWeatherStation/
Stacktrace follows:
    java.lang.IllegalArgumentException: object is not an instance of declaring class
        at grails.orm.HibernateCriteriaBuilder.invokeMethod(HibernateCriteriaBuilder.java:1163)
        at indiaweatherstation.CrawlerController$_closure1_closure3.doCall(CrawlerController.groovy:140)
        at indiaweatherstation.CrawlerController$_closure1.doCall(CrawlerController.groovy:19)
        at indiaweatherstation.CrawlerController$_closure1.doCall(CrawlerController.groovy)
        at java.lang.Thread.run(Thread.java:662)

搜索:
 def awsdata = AWSData.withCriteria {

                        eq("station", station)
                    and {
                    eq("day",dayObject)
                    }
                    }

域:
class AWSData {

    static hasOne =[station:WeatherStation, day:Day, slp:SLP,
        mslp:MSLP, rain:Rainfall, tempreature:Tempreature, 
        point:DewPoint, windSpeed:WindSpeed, 
        windDir:WindDirection, ptend:PTEND, sshm:SSHM]

    int id
    String tmax
    String tmin
    static constraints = {
        station (blank:true, nullable:true)
        day     (blank:true, nullable:true)
        slp     (blank:true, nullable:true)
        mslp    (blank:true, nullable:true)
        rain  (blank:true, nullable:true)
        tempreature (blank:true, nullable:true)
        point (blank:true, nullable:true)
        windSpeed (blank:true, nullable:true)
        windDir (blank:true, nullable:true)
        ptend (blank:true, nullable:true)
        sshm (blank:true, nullable:true)
        tmax (blank:true, nullable:true)
        tmin (blank:true, nullable:true)


    }
}

class WeatherStation {

    static hasOne= [district:District]
    static hasMany = [AWSData:AWSData, ARGData:ARGData,
        HWSRData:HWSRData, radiationData:RadiationData]
    int id
    String name
    String lat
    String lng

    static constraints = {

        AWSData (blank:true, nullable:true)
        ARGData (blank:true, nullable:true)
        HWSRData (blank:true, nullable:true)
       radiationData (blank:true, nullable:true)
    }
}

最佳答案

您的eq语句不应该都在and内吗?

def awsdata = AWSData.withCriteria {
  and {
    eq( "station", station )
    eq( "day", dayObject )
  }
}

关于grails - Grails对象不是声明类的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13669053/

相关文章:

ajax - 前端 ajax 框架与 Grails 一起使用

elasticsearch - 内联脚本包含算术的观察者条件失败

groovy - 如何找到内嵌套的内容?

grails - Sonar-runner 没有为 Groovy/Grails 项目导入 coberturacoverage.xml 报告

rest - Grails Restful Controller 未从帖子上的 rest 模板接收数据(保存)

grails - Grails 2.4.3,未在新域对象上设置isDirty标志

grails - Grails全部清除-表示无法删除一些插件

grails - GORM Grails 2.3.5分配的ID不持久,被自动生成的ID覆盖

hibernate - Grails:无法将数据库状态与 session 同步

hibernate - Grails 3 Integration Test executeUpdate,表行属性未更新