我使用buildomatic中的安装脚本安装了war文件分发。安装成功但是当我启动tomcat服务器时它会显示一些数据库异常
https://gist.github.com/shruti-palshikar/5ae801674dbd2a537518
我检查了tomcat / lib中是否存在最新的postgres驱动程序。 我还检查了数据库'jasperserver'是否具有所有必需的表 但是这些表是空的,是否有人知道哪个脚本将数据加载到表中? 任何帮助表示赞赏
答案 0 :(得分:1)
PostgreSQL的实际错误是:
relation "jiresourcefolder" does not exist
查询似乎是:
select this_.id as id5_0_, this_.version as version5_0_, this_.uri as uri5_0_, this_.hidden as hidden5_0_, this_.name as name5_0_, this_.label as label5_0_, this_.description as descript7_5_0_, this_.parent_folder as parent8_5_0_, this_.creation_date as creation9_5_0_, this_.update_date as update10_5_0_
from JIResourceFolder this_ where (this_.uri=?)
通常丑陋的框架生成SQL。
只有两种可能性:
以下内容可行:
CREATE TABLE JiReSoRrCeFoLdEr ...
SELECT * FROM jiresourcefolder...
SELECT * FROM JIRESOURCEFOLDER...
SELECT * FROM JIresourceFolder...
任何未加引号的表(或列)名称都在内部映射为小写,因此全部匹配。
但是如果你引用一个创建的表:
CREATE TABLE "JIResourceFolder"
SELECT * FROM "JIResourceFolder" -- works
SELECT * FROM JIResourceFolder -- doesn't
检查数据库架构并查看是否有此表以及是否全部为小写。然后,检查java框架的文档,看看是否有一些控制数据库表引用的标志。似乎标志设置在一个地方而不是另一个地方。
答案 1 :(得分:0)
我在Jasper Studio中遇到了同样的问题。
我的问题是为报告分配了错误的数据适配器(没有这样的表的数据库)。
我已经切换到“设计”窗口,并在该窗口的右上方“设置”旁边选择了正确的数据适配器。