【发布时间】:2011-12-08 11:30:01
【问题描述】:
我正在尝试将图像从 PostgreSQL 数据库加载到 jaspersoft ireports(4.0) 中,但收到错误消息。
在 PostgreSQL 中,图像被存储为 bytea 对象。在 ireports 中,我已将 image 字段的属性更改为 java.io.InputStream。
将图像放入报告后,设置了以下属性:
表达式类:java.io.InputStream
图片表达:image field
我还尝试使用this 教程在 ireport 中显示 blob 图像。
显示以下错误:
Error filling print... Image read failed.
Setting up the file resolver...
net.sf.jasperreports.engine.JRException: Image read failed.
at net.sf.jasperreports.engine.util.JRJdk14ImageReader.readImage(JRJdk14ImageReader.java:73)
at net.sf.jasperreports.engine.util.JRImageLoader.loadImage(JRImageLoader.java:245)
at net.sf.jasperreports.engine.JRImageRenderer.getImage(JRImageRenderer.java:476)
at net.sf.jasperreports.engine.JRImageRenderer.getDimension(JRImageRenderer.java:512)
at net.sf.jasperreports.engine.fill.JRFillImage.fitImage(JRFillImage.java:1251)
at net.sf.jasperreports.engine.fill.JRFillImage.prepare(JRFillImage.java:1173)
at net.sf.jasperreports.engine.fill.JRFillElementContainer.prepareElements(JRFillElementContainer.java:329)
at net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:419)
at net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:378)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:2038)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:760)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:270)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:128)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:946)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:845)
at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:58)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:417)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:247)
at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:877)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572)
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997)
Print not filled. Try to use an EmptyDataSource...
【问题讨论】:
-
你能把代码和报告的模板贴出来吗?
-
我正在使用 ireports 专业版 我在 postgres 中创建了一个表格,其中包含以下列 log -double lat -double image-bytea 模板 - 空白 A4 模板 然后将调色板中的图像报告元素放置在配置的报告上图像表达式和表达式类(java.io.InputStream)运行后显示报告错误消息。“显示报告页面时出错。有关详细信息,请参见控制台'。错误我已经在上面的问题中发布。但是当我删除图像元素时从报告它工作正常
-
可以发图片表达吗?
标签: postgresql jasper-reports ireport