我们有一个Grails应用程序,我们已经维护了一年多。但最近我们开始收到像
这样的错误org.hibernate.hql.ast.QuerySyntaxException: CareAlert is not mapped [from CareAlert p where p.code in (:code)]
at $Proxy24.createQuery(Unknown Source)
at com.deerwalk.FrontEndService.getAlertMessage(FrontEndService.groovy:492)
at com.deerwalk.FrontEndService$getAlertMessage.call(Unknown Source)
at com.deerwalk.MemberProfileService.getCareAlertData(MemberProfileService.groovy:81)
at com.deerwalk.MemberProfileService$getCareAlertData.call(Unknown Source)
at com.deerwalk.MemberSearchController$_closure6.doCall(MemberSearchController.groovy:891)
at com.deerwalk.MemberSearchController$_closure6.doCall(MemberSearchController.groovy)
at grails.plugin.springcache.web.GrailsFragmentCachingFilter.doFilter(GrailsFragmentCachingFilter.groovy:66)
at net.sf.ehcache.constructs.web.filter.Filter.doFilter(Filter.java:86)
at org.grails.plugin.resource.DevModeSanityFilter.doFilter(DevModeSanityFilter.groovy:44)
at com.planetj.servlet.filter.compression.CompressingFilter.doFilter(CompressingFilter.java:270)
at org.jasig.cas.client.session.SingleSignOutFilter.doFilter(SingleSignOutFilter.java:106)
at org.jasig.cas.client.session.SingleSignOutFilter.doFilter(SingleSignOutFilter.java:106)
at java.lang.Thread.run(Thread.java:662)
我们在模块中遇到了这种错误,我们甚至都没有触及过。 这个问题似乎来自于我们在哪里进行GORM查询,如
CareAlert.findAll(“来自CareAlert p,其中p.code in(:code)”, [代码:代码])
(它不是特定于CareAlert域)
似乎解决问题的是,如果我们调用任何动态查找器,如
在查询之前至少有一次CareAlert.get(1)
或CareAlert.findAll()
,该问题似乎消失了。
所以现在我们刚刚放了很多像
CareAlert.get(1)
Client.get(1)
在引导程序中。
有没有人遇到过类似的问题?