gpt4 book ai didi

java - 将 JasperReport jrxml 加载到 JFrame

转载 作者:行者123 更新时间:2023-12-04 06:08:06 25 4
gpt4 key购买 nike

如何在 JFrame 中查看我的 jrxml 文件?

我有以下java代码:

package test;

import java.sql.Connection;
import java.sql.DriverManager;
import javax.swing.JFrame;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.swing.JRViewer;


public class Test extends JFrame {

private Connection conn = null; // database connection

public Test() {

try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:XE",
"test", "test");
JasperReport report = JasperCompileManager.compileReport("report1.jrxml");
JasperPrint print = JasperFillManager.fillReport(report, null, conn);
JRViewer viewer = new JRViewer(print);
viewer.setOpaque(true);
viewer.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
conn.close();
} catch (Exception e) {
}
}

setSize(500, 600);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
new Test();
}
}

但是,当我尝试运行它时,收到以下错误消息:
log4j:WARN No appenders could be found for logger(net.sf.jasperreports.engine.xml.JRXmlDigesterFactory).

log4j:WARN Please initialize the log4j system properly.

我的 JFrame出现但没有我想嵌入的报告。

你认为我的错误是什么?

最佳答案

JRViewer JPanel ,所以而不是..

viewer.setVisible(true);

放 ..
// Add the viewer to the frame
add(viewer);

作为旁白:
} catch (Exception e) {
}

改变那个,到..
} catch (Exception e) {
e.printStackTrace();
}

关于java - 将 JasperReport jrxml 加载到 JFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8111204/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com