我可以在 Jetty 中成功运行我的 Grails 应用程序。它成功连接到我的 MsSql 数据库,一切都很好。当我在同一台机器上的 Tomcat 6 中部署相同的应用程序时,在 Tomcat 日志中启动时收到以下错误:
Caused by: java.net.ConnectException: Connection refused: connect
我不相信我的 MsSql 服务器是问题,因为我有另一个 Java 应用程序在同一个 Tomcat 实例中运行并成功访问同一个数据库服务器。
当我在 Jetty 和 Tomcat 中部署它时,连接字符串完全相同。在 Tomcat 6 中部署 Grails 应用程序时为什么无法连接到数据库的任何想法?当我的 Grails 应用程序部署在 Tomcat 中时,我似乎无法访问任何数据库。(我的其他 Java 应用程序(Confluence)连接没有问题。
这是我的连接信息:
dataSource {
pooled = true
driverClassName = "net.sourceforge.jtds.jdbc.Driver"
username = "user"
password = "pass"
}
hibernate {
cache.use_second_level_cache=true
cache.use_query_cache=true
cache.provider_class='com.opensymphony.oscache.hibernate.OSCacheProvider'
}
// environment specific settings
environments {
development {
dataSource {
dbCreate = "update" // one of 'create', 'create-drop','update'
url = "jdbc:jtds:sqlserver://localhost:1143/holidayCards"
}
}
test { //for AD-DEV02
dataSource {
dbCreate = "update"
url = "jdbc:jtds:sqlserver://AD-DEV02:1237/holidayCards;instance=SQL2005"
}
}
production {
dataSource {
dbCreate = "update"
url = "jdbc:jtds:sqlserver://SQL:1433/holidayCards"
}
}
}
我总是部署为“测试”:
grails test war
正如您从下面的回答中看到的那样,我认为这不是连接问题,因为当我从 grails 1.1beta1 降级到 1.0.4 时,我能够成功开始工作。
任何帮助表示赞赏,
安德鲁