1 年以上保守している 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("from CareAlert p where p.code in (:code) ", [コード:コード])
(CareAlert ドメインに固有のものではありません) 問題を解決しているように
見えるのは、クエリの前にCareAlert.get(1)
またはのような動的ファインダーCareAlert.findAll()
を少なくとも 1 回呼び出すと、そのドメインの問題が解決するように見えることです。今のところ、次のような一連の行を配置しました
CareAlert.get(1)
クライアント.get(1)
ブートストラップで。
誰かが同様の問題を経験しましたか?