我正在尝试设置我的 BIRT 报告和它们所在的 iServer,以便Data Sources
连接到的数据库由环境确定。我们的设置是目前只有一个 iServer 实例和许多运行 tomcat webapp 的环境(这可能是问题...)。
本质上理想的是报告在这些地方以不同的方式连接:
- 本地开发,它正在运行与 iPortal/iServer 对话的应用程序的本地 tomcat 实例。本地数据库,但应该能够轻松更改为其他数据库进行调试等。
- QA 部署,QA 数据库
- 生产部署,生产数据库
我已经看到了两种解决此问题的方法:
- 第一个选项是将 绑定
Data Source
到某处资源中的配置文件。这里的问题是,如果你只有一个 iServer,它的资源是它所在服务器的本地资源,而不是 webapp 所在的地方。所以,如果我理解正确,这并不能提供我正在寻找的灵活性。 - 第二个选项是将所有连接信息作为报告参数传递,并让应用程序确定要发送的正确参数。这样应用程序可以从本地配置文件中提取。这个选项会起作用,但我厌倦了传递连接信息/凭据的安全性(或缺乏安全性)。
有没有人有更好的选择?或者人们只是为了开发而运行本地 iServer 实例?我可以看到为每个环境运行 iServer 可以简化此问题,并允许发布到生产的报告在 QA 环境中更新和测试,而不会中断生产,所以也许这就是解决方案。