当前位置: 首页 > 知识库问答 >
问题:

使用grials run-app运行Grails 2.1.1应用程序时收到未知错误

鄢朝斑
2023-03-14

在使用Grails run-app命令运行Grails 2.1.1应用程序时,我收到了无法创建所需bean的Hibernate错误。

错误的堆栈跟踪如下所示:

->>  334 | innerRun  in java.util.concurrent.FutureTask$Sync
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
  |    166 | run       in java.util.concurrent.FutureTask
  |   1145 | runWorker in java.util.concurrent.ThreadPoolExecutor
  |    615 | run       in java.util.concurrent.ThreadPoolExecutor$Worker
  ^    724 | run . . . in java.lang.Thread

由BeanCreationException引起:创建名为“Session Factory”的bean时出错:设置bean属性“hibernate properties”时无法解析对bean“hibernate properties”的引用;嵌套异常为org.springframework.beans.factory.BeanCreationException:创建名为“hibernate properties”的bean时出错:使用键[hibernate.dialce]设置bean属性“properties”时无法解析对bean“方言检测器”的引用;嵌套异常为org.springframework.beans.factory.beanCreationException:创建名为“方言检测器”的bean时出错:调用init方法失败;嵌套异常为org.codehaus.groovy.grails.orm.Hibernate.exceptions.couldNotDetermineHibernateDialectException:无法确定数据库名称[H2]的Hibernate方言!

my databaseConfig.groovy的设置如下:

  dataSource {
  pooled = true
  driverClassName = "org.h2.Driver"
  username = "sa"
  password = ""
}
hibernate {
cache.use_second_level_cache = true
cache.use_query_cache = false
cache.region.factory_class = 'net.sf.ehcache.hibernate.EhCacheRegionFactory'
}

    // environment specific settings
  environments {

development {
    dataSource {
        dbCreate = "update"
        url = "jdbc:h2:mem:testDb;MVCC=TRUE;LOCK_TIMEOUT=10000"
    }
}
test {
    dataSource {
        dbCreate = "update"
        url = "jdbc:h2:mem:testDb;MVCC=TRUE;LOCK_TIMEOUT=10000"
    }
}
production {
    dataSource {
        dbCreate = "update"
        url = "jdbc:h2:mem:testDb;MVCC=TRUE;LOCK_TIMEOUT=10000"
    }
}

早日答复是非常感谢的。

谢谢

共有1个答案

顾嘉纳
2023-03-14

都经历过同样的问题。

这个问题似乎与您正在运行的grails版本有关。对于版本2.2.3以下的grails上的jdk 1.7.025>似乎会出现这种情况。

我们降级到jdk的较低版本,问题没有出现。

 类似资料:
  • 下面是我的函数的简化版本: 我没有任何特定的java代码,因为我现在只需要显示通知。有没有人想过用一种简单的方法来存档这个问题?

  • 以下是该应用程序的权限。它将读取和写入图像文件到外部存储,以及使用相机拍摄照片。该应用程序不访问其他资源,如联系人,短信和日历。 android.permission.access_network_state android.permission.camera android.permission.internet android.permission.read_external_storage

  • 我正在发送纯FCM数据通知到一个Android客户端,它们是端到端加密的。android应用程序解密数据通知负载,并从加密的数据创建本地通知。只要应用程序在前台或后台运行,这就可以正常工作:通知负载会被接收、解密,甚至会显示在锁定屏幕上,但只有在应用程序运行的时候才可以。我还查看了消息优先级,并在通知消息的AndroidConfig成员和数据字段中将其设置为“high”(发送到FCM的应用服务器)

  • 我开发了一个新的Android应用程序使用appcelerator。我使用ti.cloudpush来使用来自Firebase的推送通知,如本例所示;如果应用程序处于后台,则成功发送通知并显示在设备的通知栏中,但当应用程序处于前台或关闭时,则不会收到通知发送过程的结果是"成功"。 我需要使它像facebook messenger一样,在应用程序关闭时显示在设备屏幕上。我尝试了其他几个模块,如“ti.

  • 当我打开我的android应用程序并测试解析推送通知时,它工作了。但是当我把我的应用程序从多任务中杀死并再次测试时,应用程序崩溃了。 错误日志 08-18 21:16:21.694 244 06-24406/?E/AndroidRuntime:致命异常:main process:com.myatminsoe.mKeyboard,PID:24406 java.lang.runtimeExceptio

  • 我正在尝试在windows Phone7.5中实现推送通知 更新: 我知道通道活动时间长达30天,当我只使用模拟器时是否相同? 应用程序应与通道相关联,以便接收通知,即使在应用程序未运行时,如果通知通道处于活动状态,则应用程序也将接收toast