JasperReports报表中如何将图片做为参数传送
有这样的需求,jasperreports报表的图片是动态传送过去的,在ireport的图片参数中看到expression class下拉里可以选择InputStream,javax.awt.Image等,但是当我将这些类型的参数分别传过去后,会报类似
net.sf.jasperreports.engine.JRException: Byte data not found at : java.io.FileInputStream@2af8f5的错,试了很多种流类型都不行,断点跟踪源码,发现在
void net.sf.jasperreports.engine.fill.JRFillImage.evaluateImage(byte evaluation) throws JRException
方法的
Object source = evaluateExpression(expression, evaluation);此行代码执行后返回的source对象就为java.lang.String类型,但是下面的判断
if (source instanceof Image) ... else if (source instanceof InputStream) ... else if (source instanceof URL) ... else if (source instanceof File) ... else if (source instanceof String) ... else if (source instanceof JRRenderable) ... else ...只能执行到"source instanceof String"中
不知道是不是我设置错了什么参数,还是这本来就是个bug,请教一下大家有没有遇到过这种问题?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
今天用
InputStream设置image也遇到同样的问题,求解。。在ireport中设置expression class没有用,是不是要在jasperreport后台设置相关参数?如果方便能不能帮忙查一下源码,不胜感激!
今天用
InputStream设置image也遇到同样的问题,求解。。在ireport中设置expression class没有用,是不是要在jasperreport后台设置相关参数?如果方便能不能帮忙查一下源码,不胜感激!
今天用
InputStream设置image也遇到同样的问题,求解。。在ireport中设置expression class没有用,是不是要在jasperreport后台设置相关参数?如果方便能不能帮忙查一下源码,不胜感激!
好久之前的研究,好像忘了
今天用
InputStream设置image也遇到同样的问题,求解。。在ireport中设置expression class没有用,是不是要在jasperreport后台设置相关参数?如果方便能不能帮忙查一下源码,不胜感激!
请问楼主是如何解决的呢?在ireport要如何设置的?项目中还需要配置其他吗?
设置问题...唉~纠结~
参数那里选择InputStream
没搞过