在Windows Vista,Windows 7或Windows 2008的某些計算機上運行我們的應用程序時,我們在生成Jasper報告時出現以下錯誤:使用圖像創建JasperReport無法在Windows Vista,7或Server 2008上創建臨時文件
java.lang.RuntimeException:net.sf.jasperreports.engine.JRException:javax.imageio.IIOException:無法創建輸出流! (RRelatorioJasper.java:44) at br.com.oobj.cte。 dacte.RGerarDacte.gerarJasperPrint(RGerarDacte.java:153) 在br.com.oobj.cte.dacte.RGerarDacte.gerarJasperPrint(RGerarDacte.java:66) 在br.com.oobj.me.impressao.GeradorDacte.gerarDAME( GeradorDacte.java:55) at br.com.oobj.me.impressao.GeradorDameDelegator.gerarDAME(GeradorDameDelegator.java:23) at br.com.oobj.me.impressao.ServicoImpressao.processar(ServicoImpressao.java:117) at br.com.oobj.me.impressao.ConsumidorImpressao.novaMensagem(ConsumidorImpressao.java:71) at br.com.oobj.util.fila.ConsumidorNotificante.run(Consum idxNotificante.java:229) at br.com.oobj.me.impressao.ConsumidorImpressao.run(ConsumidorImpressao.java:47) 原因:net.sf.jasperreports.engine.JRException:javax.imageio.IIOException:Can'創建輸出流! 在net.sf.jasperreports.engine.util.JRJdk14ImageEncoder.encode(JRJdk14ImageEncoder.java:90) 在net.sf.jasperreports.engine.util.JRAbstractImageEncoder.encode(JRAbstractImageEncoder.java:74) 在net.sf. jasperreports.engine.util.JRImageLoader.loadImageDataFromAWImage(JRImageLoader.java:166) at net.sf.jasperreports.engine.JRImageRenderer.getInstance(JRImageRenderer.java:207) at net.sf.jasperreports.engine.JRImageRenderer.getInstance( JRImageRenderer.java:190) at net.sf.jasperreports.engine.fill.JRFillImage.evaluateImage(JRFillImage.java:901) at net.sf.jasperreports.engine.fill.JRFillImage.evaluate(JRFillImage.java:870)at net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(JRFillElementContainer.java:275) at net.sf.jasperreports.engine.fill.JRFillBand.evaluate(JRFillBand.java:426) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillBandNoOverflow(JRVerticalFiller.java:424) at net.sf. jasperreports.engine.fill.JRVerticalFiller.fillPageHeader(JRVerticalFiller.java:388) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:249) at net.sf.jasperreports.engine.fill。 JRVerticalFiller.fillReport(JRVerticalFiller.java:113) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:891) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller。 java:814) at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:89) at net.sf.jasperreports.engine.JasperFillManag er.fillReport(JasperFillManager.java:601) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:517) at br.com.oobj.relatorio.RRelatorioJasper.gerarJasperPrint(RRelatorioJasper.java:58) ... 9更多 引起:javax.imageio.IIOException:無法創建輸出流! 在javax.imageio.ImageIO.write(來源不明) 在net.sf.jasperreports.engine.util.JRJdk14ImageEncoder.encode(JRJdk14ImageEncoder.java:86) ...... 27多個 產生的原因:javax.imageio.IIOException :無法創建緩存文件! at javax.imageio.ImageIO.createImageOutputStream(Unknown Source) ... 29更多 引起:java.io.IOException:系統在java.io.WinNTFileSystem中找不到指定的路徑 。createFileExclusively(本機方法) 在java.io.File.checkAndCreate(來源不明) 在java.io.File.createTempFile(來源不明) 在javax.imageio.stream.FileCacheImageOutputStream。(來源不明) 在的com.sun .imageio.spi.OutputStreamImageOutputStreamSpi.createOutputStreamInstance(來源不明) ...... 30多個
該報告引用外部JPG圖片。該應用程序作爲Windows服務運行。我已經嘗試用管理員用戶啓動服務,但沒有成功。
會很感激的任何幫助,您可以攜帶:
在某些機器上,我們將圖像重新定位到C以外的其他驅動器解決了這個問題。
感謝, Jonathas的