在运行JasperViewer.viewReport(JasperPrint)方法时获取java.awt.HeadlessException

时间:2012-11-08 20:13:52

标签: java jasper-reports

我在 Ubuntu 11 上运行此代码时收到错误:

JasperReport jasperReport = JasperCompileManager.compileReport("/resources/etiquetas/etiquetaEndereco.jrxml");
JasperPrint print = JasperFillManager.fillReport(jasperReport, parametros);
JasperViewer.viewReport(print);

堆栈:

GRAVE: java.awt.HeadlessException
    at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:159)
    at java.awt.Window.<init>(Window.java:432)
    at java.awt.Frame.<init>(Frame.java:403)
    at java.awt.Frame.<init>(Frame.java:368)
    at javax.swing.JFrame.<init>(JFrame.java:158)
    at net.sf.jasperreports.view.JasperViewer.<init>(JasperViewer.java:264)

我找不到此错误的解决方法。

1 个答案:

答案 0 :(得分:2)

正如Java文档所示,java.awt.HeadlessException是:

  

当依赖于键盘,显示器或鼠标的代码时抛出   在不支持键盘,显示器或支持的环境中调用   鼠标。

Source

java.awt.GraphicsEnvironment

  

GraphicsEnvironment类描述了集合   Java可用的GraphicsDevice个对象和Font个对象(tm)   在特定平台上的应用程序。

Source

检查您的报告源文件(etiquetaEndereco.jrxml)是否正在调用系统上无法安装的字体。