zoukankan      html  css  js  c++  java
  • html单元格导出excel图形环境问题

    

    现象:报表页面端展现正常,点击导出excel,选择完是否分页后页面没有反应,后台润乾日志中错误信息:

    runqianReportLogger : [ERROR]  - Error 

    at com.runqian.report4.view.excel.ExcelReport.createWorkbook(ExcelReport.java:474) 
    at com.runqian.report4.view.excel.ExcelReportServlet.service(ExcelReportServlet.java:94) 
    at com.runqian.report4.view.ReportServlet.service(Unknown Source:1070) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:989) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:930) 

    查看web服务器系统日志,看到错误信息:

    java.lang.NullPointerException

           at java.awt.EventQueue.isDispatchThread(EventQueue.java:749)

           at javax.swing.SwingUtilities.isEventDispatchThread(SwingUtilities.java:1302)

           at javax.swing.text.StyleContext.reclaim(StyleContext.java:454)

           at javax.swing.text.StyleContext.addAttribute(StyleContext.java:311)

           at javax.swing.text.StyleContext$NamedStyle.addAttribute(StyleContext.java:1503)

           at javax.swing.text.StyleContext$NamedStyle.setName(StyleContext.java:1313)

           at javax.swing.text.StyleContext$NamedStyle.<init>(StyleContext.java:1261)

           at javax.swing.text.StyleContext.addStyle(StyleContext.java:120)

           at javax.swing.text.StyleContext.<init>(StyleContext.java:100)

           at javax.swing.text.StyleContext.getDefaultStyleContext(StyleContext.java:88)

           at javax.swing.text.AbstractDocument.<init>(AbstractDocument.java:126)

    从错误中可以看到和图形环境有关系,但是导出excel时一般情况下不会用到图形环境,再导出系统中的其他报表,发现有的报表能够正常导出。

    查看报表中的区别,发现导出异常的报表中用到了html单元格,而润乾转换该单元格时是将html单元格转换成图片形式导出到excel里,这样就涉及到了图形环境问题。

    解决办法:

    解决图形环境问题,但是现在系统比较稳定不想再做系统上的操作,并且图形环境问题解决起来有一定技术含量。

    润乾基于该问题更新了产品,增加了个系统参数,可通过该参数设定导出excel时遇到html单元格,将html单元格转换成文本形式导出。

    解决步骤:

    1:更新report4

    2“设置参数<%System.setProperty(“runqianReport.excel.html”,”com.runqian.report4.view.excel.HtmlExportImpl1″);%>

    将该行代码写到展现报表的jsp中即可。

  • 相关阅读:
    shell脚本day06-sed
    shell脚本day05-交互式输入与for语句
    shell脚本day04-if语句
    shell脚本day04-grep与正则表达式
    shell脚本day03-编程原理
    shell脚本day02-重定向与管道符
    编程原理大致介绍
    进程管理
    Linux网络
    shell脚本--grep以及正则表达式
  • 原文地址:https://www.cnblogs.com/shiGuangShiYi/p/10117510.html
Copyright © 2011-2022 走看看