【问题标题】:war file generated by Grails ignores dataSource URLGrails 生成的 war 文件忽略数据源 URL
【发布时间】:2009-09-12 17:33:45
【问题描述】:

Grails 版本:1.1

Tomcat 版本:5.5

问题: 应用程序不使用 URL 数据源。

看起来 - 它正在使用其他一些数据源 - 但它似乎不在内存数据库中 - 因为我可以看到数据在会话之间持续存在。

我什至尝试提供一个不存在的数据库名称 - 并且应用程序运行良好。我的意思是我能够持久化数据并在应用程序中很好地获取它 我无法弄清楚数据在哪里被持久化了!!!

我使用命令 grails war 生成了 war 文件

这就是 dataSource 配置的样子

 dataSource {

    pooled = true

    driverClassName = "com.mysql.jdbc.Driver"

    username = "user"

    password = "pwd"

 }

 hibernate {

    cache.use_second_level_cache=true

    cache.use_query_cache=true

    cache.provider_class='com.opensymphony.oscache.hibernate.OSCacheProvider'

 }

 environments {

    production {

        dataSource {

            dbCreate = "create" 

            url = "jdbc:mysql://localhost:3307/mydb?autoReconnect=true"

            dialect = org.hibernate.dialect.MySQL5Dialect

        }

    }

 }  

【问题讨论】:

  • 您找到解决方案了吗?我也有同样的问题。
  • 不是真的——过了一段时间我不再面对这个问题了。我推断我犯了一个错误。但无法确认

标签: tomcat grails war-filedeployment


【解决方案1】:

您需要设置生产数据源,因为这是 grails 在生成战争时使用的。


development {

        dataSource {

                dbCreate = "create" 

                url = "jdbc:mysql://localhost:3307/mydb?autoReconnect=true"

                dialect = org.hibernate.dialect.MySQL5Dialect
}
        }

production {

        dataSource {

                dbCreate = "create" 

                url = "jdbc:mysql://localhost:3307/mydb?autoReconnect=true"

                dialect = org.hibernate.dialect.MySQL5Dialect
}
        }

【讨论】:

  • 对不起,这是我的错字我已经设置了生产 - 与开发相同(实际上测试也是相同的)
  • 默认情况下,Grails 在构建战争时使用 'prod' 环境,如果你想覆盖它,你可以运行 'grails dev war'
【解决方案2】:

您看到哪些证据表明 Grails 忽略了您的数据源?

在运行 Grails 以创建 mydb、添加具有“usr”和“pwd”的用户并授予适当的权限之前,您是否进入 MySQL? Grails 不会为您这样做。

一旦数据库存在,Grails 将为您创建模式。您应该能够登录、使用 mydb 并“显示表”以查看架构。

但你必须先创建数据库。

【讨论】:

  • 1) 如果我输入一个不存在的服务器名称 - 没有错误 - CRUD 照常工作 2) 我使用eatj.com 来托管应用程序 - 我已经确认数据库架构确实存在 3) 没有创建表。我可以尝试自己创建表格 - 但这无济于事 - 因为它似乎根本不使用 URL
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多