2013-10-10 843 views
0

好日子,java.lang.NoClassDefFoundError:net.sf.jasperreports.engine.util.JRStyledTextParser(初始化失敗)

我有一個Web應用程序其中有一個模塊,讓用戶下載的excel文件的報告當點擊一個按鈕時。

不過,我打這個錯誤:

[10/10/13 20:21:48:332 MYT] 00000095 ServletWrappe E com.ibm.ws.webcontainer.servlet.ServletWrapper service Uncaught service() exception thrown by servlet action: java.lang.NoClassDefFoundError: net.sf.jasperreports.engine.util.JRStyledTextParser (initialization failure) 
    at java.lang.J9VMInternals.initialize(J9VMInternals.java:176) 
    at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:121) 
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:88) 
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:103) 
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:61) 
    at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:153) 
    at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:82) 
    at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:653) 
    at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:969) 
    at com.cv.report.service.impl.ReportServiceImpl.getReport(ReportServiceImpl.java:101) 
    at com.cv.report.service.core.AbstractReportExporter.getReport(AbstractReportExporter.java:69) 
    at com.cv.report.service.impl.ExcelExporter.exportAsByte(ExcelExporter.java:120) 
    at com.cv.report.service.core.AbstractReportExporter.export(AbstractReportExporter.java:53) 
    at com.cv.report.service.impl.ExcelExporter.export(ExcelExporter.java:82) 
    at com.cv.report.service.impl.ReportService.export(ReportService.java:53) 
    at com.cv.ibs.ccweb.report.ReportLastSuccessfulSignOnDateAction.performExport(ReportLastSuccessfulSignOnDateAction.java:121) 
    at com.cv.ibs.ccweb.report.ReportAction.executeOther(ReportAction.java:62) 
    at com.cv.ibs.ccweb.BaseAction.execute(BaseAction.java:487) 
    at com.cv.ibs.ccweb.report.ReportAction.execute(ReportAction.java:88) 
    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:465) 
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274) 
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1422) 
    at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:505) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:575) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:668) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1227) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:776) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:458) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178) 
    at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1032) 
    at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3761) 
    at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304) 
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:976) 
    at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662) 
    at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:200) 
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:459) 
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:526) 
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:312) 
    at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88) 
    at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1784) 
    at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175) 
    at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) 
    at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) 
    at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) 
    at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) 
    at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) 
    at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) 
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1862) 

我嘗試從互聯網上搜索,但談論的大多是在我的類路徑問題缺少的jar文件。 我查我的檔案在我的環境,我想我的jar文件應該是正確的,下面是這些jar文件:

  1. 公地beanutils.jar
  2. 的commons-collections.jar
  3. 公共沼氣池-2.1.jar
  4. 公共發現-0.2.jar
  5. 共享記錄-1.1.1.jar
  6. 的dom4j-1.6.1.jar
  7. 的iText-2.1.7.jar
  8. 雅加達regexp.jar
  9. JasperReports的-4.7.0.jar
  10. JasperReports的小程序,4.7.0.jar
  11. 的JasperReports的字體-4.7.0.jar
  12. JasperReports的-javaflow-4.7 .0.jar
  13. jcommon-1.0.15.jar
  14. POI-3.8-20120326.jar
  15. POI-OOXML-3.8-20120326.jar
  16. POI-OOXML-架構 - 3.8-20120326.jar
  17. STAX的API-1.0.1.jar
  18. 的xmlbeans-2.3.0.jar

我與RAD 8.5.5與Struts框架的工作。在此之前,我正在使用RAD 7.0中的相同Web應用程序。

RAD 7.0工作正常與按鈕下載Excel文件中的報告。但是,當我轉移到RAD 8.5.5時,我遇到了這個錯誤。

請讓我知道我是否提供了錯誤信息。

請注意。 (JRStyledTextParser的靜態初始化確實GraphicsEnvironment.getLocalGraphicsEnvironment())

+0

您可以發佈您的報告中使用的樣式的jrxml代碼嗎? – user1791574

回答

1

這可能是一個失敗加載AWT類引起的。

添加-Djava.awt.headless = true添加到服務器的Java進程來確認或體弱這個可能的原因。

+0

謝謝dada67。我是Java的新手,我可以知道哪些文件應該添加到代碼裏面嗎? –

+0

我不能回答這個問題,這取決於您使用的安裝/產品/等。 – dada67