java - 如何将多个连接传递给 birt Report?

标签 java birt

我可以通过数据库连接通过 java 代码进行报告。以下是我的实现方式:

DataSource datasourceOracle= (DataSource)initialContext.lookup("java:jboss/jdbc/BirtConn");
task.getAppContext().put("OdaJDBCDriverPassInConnection", datasourceOracle.getConnection());

我的问题是报告使用了多个数据源。所以我需要通过两个多重连接来报告。我该怎么办?

最佳答案

如果您知道 Java 代码中连接的详细信息,则可以传递这些详细信息而不仅仅是 JNDI 名称,如下所示:

task.getAppContext().put("conn1.username", "scott");
task.getAppContext().put("conn1.password", "tiger");
task.getAppContext().put("conn1.url", "oracle:jdbc:thin:@//oracledb:1521/orcl");

task.getAppContext().put("conn2.username", "hr");
task.getAppContext().put("conn2.password", "x");
task.getAppContext().put("conn2.url", "oracle:jdbc:thin:@//other-db:1521/xyz");

在报告中,您可以使用数据集的属性绑定(bind)对话框来设置上下文中的值,例如对于您的第一个数据源:

Database URL: reportContext.getAppContext().get("conn1.name");
User Name:    reportContext.getAppContext().get("conn1.username");
Password:     reportContext.getAppContext().get("conn1.password");

关于java - 如何将多个连接传递给 birt Report?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52490504/

相关文章:

java - Java Card 中的加密/解密输出 + 相应的 APDU

java - 无法连接到我的 Elasticsearch 实例 : NoNodeAvailableException

java - 如何在swing中找到异常

java - 使用 BIRT 创建报告

tomcat - org.eclipse.birt.report.data.oda.jdbc.JDBCException : Cannot load JDBC Driver class: org. postgresql.驱动程序

pdf - 使用 iText 获取 pdf 文件中元素的坐标

Java Mail - XML 和 HTML 表

java - 安卓 :Parse XML Data: Tags with arguments

java - 类加载器的输入流已损坏

xml - 如何将参数传递给基于 URL 的数据源 - Birt 4.3.2