postgresql - Postgres 的 Jasper 服务器社区版安装问题

标签 postgresql tomcat jdbc war

我使用 buildomatic 中的安装脚本安装了 war 文件分发版。安装成功但是当我启动tomcat服务器时它显示一些数据库异常

https://gist.github.com/shruti-palshikar/5ae801674dbd2a537518

我检查了 tomcat/lib 中是否存在最新的 postgres 驱动程序。 我还检查了数据库“jasperserver”是否包含所有必要的表 但是这些表是空的,有谁知道哪个脚本将数据加载到表中? 感谢任何帮助

最佳答案

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。

只有两种可能:

  1. 没有表“jiresourcefolder”、“JIResourceFolder”或任何其他大写形式。
  2. 该表是用引号创建的以保留其大小写,查询未使用引号。

以下将起作用:

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 框架的文档,看看是否有一些标志控制数据库表的引用。似乎标志设置在一个地方而不是另一个地方。

关于postgresql - Postgres 的 Jasper 服务器社区版安装问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19500129/

相关文章:

jdbc - 处理来自同一供应商的多个 JDBC 驱动程序

java - 使用 JDBC 和 Java 连接到 apache phoenix

python - 在 Postgres/PostGIS 中迁移 django 模型没有反射(reflect)

ruby-on-rails - 存储 "schemas"以使用 postgres 和 rails 构建自定义表单

postgresql - 哪些 Postgres 13 索引类型支持距离搜索?

multithreading - 多个请求访问同一个 web 方法

javascript - Vue.js 组件在 jsp 文件中不起作用

postgresql - 表 "subscriber_historization"上的 UNIQUE 约束缺少作为分区键一部分的列 "processing_date"

java - Tomcat 8.5.45 启动后抛出大量 NullPointerException-s 但继续工作

hadoop - 通过 SQOOP 连接到 DB2 时出现连接管理器错误