【发布时间】:2014-07-17 15:37:19
【问题描述】:
我创建了一个使用 highcharts 和 D3 js 库的 grails 应用程序。这些图表的数据源目前是 MySQL 服务器,它在我的 PC 上运行
当应用程序在我的 PC 上使用“grails run-app”以开发模式运行时,它运行得非常好。 现在,我想部署应用程序(生产模式)并使用“grails war”创建了一个war文件,并使用“Apache tomcat 7.0.54”作为我的容器,但是当我在管理器中打开我的应用程序时它会引发很多错误Tomcat服务器的模式。 此外,可视化没有正确显示 - 只有一个下拉菜单(而不是 4 个)并且没有图表显示
这是点击过滤器时观察到的错误:
GET http://localhost:8080/marchmock2/Tablev1class/salesjson 404 (Not Found) d3.v3.min.js:1
Uncaught SyntaxError: Unexpected token u (index):409
它根本无法读取可视化所需的 json 文件。 我认为主要问题在于Datasource.groovy。 代码: 开发模式(工作):
development {
dataSource {
url = "jdbc:mysql://localhost/marchmock2?useUnicode=yes&characterEncoding=UTF-8"
username = "root"
password = "root"
}
生产模式(WAR文件) 不工作:
代码:
production {
dataSource {
dbCreate = "update"
url = "jdbc:mysql://localhost/marchmock2?useUnicode=yes&characterEncoding=UTF-8"
username = "root"
password = "root"
properties {
maxActive = -1
minEvictableIdleTimeMillis=1800000
timeBetweenEvictionRunsMillis=1800000
numTestsPerEvictionRun=3
testOnBorrow=true
testWhileIdle=true
testOnReturn=false
validationQuery="SELECT 1"
jdbcInterceptors="ConnectionState"
}
}
}
所以,问题可能是
- Datasource.groovy 中的错误代码
- Apache Tomcat 找不到 mysql 数据库,因此无法获取相关数据
另外,servlet 容器究竟是如何从数据库中提取数据的?我不明白这一点,因为我对 Tomcat 和 Grails 很陌生
任何解决此问题的建议/方法都将受到高度赞赏。
【问题讨论】:
-
http://localhost:8080/marchmock2/Tablev1class/salesjson- 这个控制器名称似乎很奇怪 - Tablev1class。 -
grails 控制器动作看起来如何被引用并服务于 json 结构?
-
如何在使用 js 的 .gsp(view) 中创建链接?
-
您在应用程序/Tomcat 日志文件中看到任何错误/异常吗?
-
您能否向我们提供有关您的控制器和操作的更多信息?我认为这根本与您的数据库无关。
标签: tomcat grails deployment