报表格子数据类型选择 HTML 嵌入 base64 格式图片导出 excel、word、pdf,打印 / 预览 pdf 都报错

SEVERE: Error:
java.lang.IllegalAccessError: class com.raqsoft.report.util.htmlimage.HTMLToImageDefault (in unnamed module @0x3cd3e762) cannot access class sun.awt.image.BufferedImageGraphicsConfig (in module java.desktop) because module java.desktop does not export sun.awt.image to unnamed module @0x3cd3e762
at com.raqsoft.report.util.htmlimage.HTMLToImageDefault.getHTMLCellImage(HTMLToImageDefault.java:55)
at com.raqsoft.report.util.ReportParser.getHTMLCellImage(ReportParser.java:1169)
at com.view.pdf.PdfCell.drawCell(PdfCell.java:271)
at com.view.pdf.PdfReport.drawReport(PdfReport.java:544)
at com.view.pdf.PdfReport.outReport(PdfReport.java:360)
at com.view.pdf.PdfReport.addReportPage(PdfReport.java:300)
at com.view.pdf.PdfReport.executeExport(PdfReport.java:291)
at com.view.pdf.PdfReport.export(PdfReport.java:265)
at com.raqsoft.report.view.pdf.PdfReport.export(PdfReport.java:70)
at com.raqsoft.report.view.pdf.PdfReportServlet.service(PdfReportServlet.java:306)
at com.raqsoft.report.view.ReportServlet.service(ReportServlet.java:1781)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:840)

用的什么时候的版本?
可以在报表设计器里,工具栏中的帮助,关于,那里看下发布日期。
不过看错误应该和图形环境有关,找到 web.xml,配置润乾的 servlet 里有个 headless,把那个改成 true,重启试下。
发布日期:2026-01-06
版权所有:2024-2025
可能和 jdk 权限相关,可以尝试搜下这个错误:
cannot access class sun.awt.image.BufferedImageGraphicsConfig (in module java.desktop) because module java.desktop does not export sun.awt.image to unnamed module @0x3cd3e762
headless 改成 true 了还是一样的报错

现在用的 jdk 是什么版本?
JDK17
用的什么 web 服务器?启动时加上这些参数试下 :

可以了导出和打印了,感谢