Article Content
Article Number | 000036006 |
Applies To | RSA Product Set: RSA Identity Governance & Lifecycle RSA Version/Condition: 7.0.1 |
Issue | When we export any report (custom or standard type) in Microsoft Excel file format (.xls), the system returns a blank file with no values in it, but if we use any other format to export the data, we are able to see the content in the exported file. The following error can be seen in the aveksaServer.log while performing the export in .xls format: 01/15/2018 16:43:57.922 ERROR (default task-5) [com.aveksa.server.report.Report] Error in fillReportForExport java.lang.RuntimeException: java.io.IOException: No such file or directory at org.apache.poi.xssf.streaming.SXSSFWorkbook.createAndRegisterSXSSFSheet(SXSSFWorkbook.java:642) at org.apache.poi.xssf.streaming.SXSSFWorkbook.createSheet(SXSSFWorkbook.java:659) at com.aveksa.server.report.RawDataExporter.createXlsFile(RawDataExporter.java:251) at com.aveksa.server.report.RawDataExporter.exportReport(RawDataExporter.java:129) at com.aveksa.server.report.Report.fillExportStream(Report.java:1451) at com.aveksa.server.report.Report.fillReportForExport(Report.java:1734) at com.aveksa.server.report.Report.saveAs(Report.java:1365) at com.aveksa.gui.objects.report.GuiReport.print(GuiReport.java:747) at com.aveksa.gui.pages.report.report_definition.export.ExportReportDialogData.handleSubmit(ExportReportDialogData.java:168) at com.aveksa.gui.pages.report.report_definition.export.ExportReportDialogData.handleRequest(ExportReportDialogData.java:143) at com.aveksa.gui.pages.PageManager.forwardRequest(PageManager.java:577) at com.aveksa.gui.pages.PageManager.handleRequest(PageManager.java:341) at com.aveksa.gui.pages.PageManager.handleRequest(PageManager.java:272) at com.aveksa.gui.core.MainManager.handleRequest(MainManager.java:179) at com.aveksa.gui.core.MainManager.doGet(MainManager.java:128) at com.aveksa.gui.core.MainManager.doPost(MainManager.java:414) at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:130) at com.aveksa.gui.core.filters.LoginFilter.doFilter(LoginFilter.java:53) at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:60) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:132) at com.aveksa.gui.util.security.XSSFilter.doFilter(XSSFilter.java:20) at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:60) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:132) at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:85) at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:61) at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131) at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:56) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) at io.undertow.security.handlers.AuthenticationConstraintHandler.handleRequest(AuthenticationConstraintHandler.java:51) at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:45) at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:63) at io.undertow.servlet.handlers.security.ServletSecurityConstraintHandler.handleRequest(ServletSecurityConstraintHandler.java:56) at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:58) at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:70) at io.undertow.security.handlers.SecurityInitialHandler.handleRequest(SecurityInitialHandler.java:76) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:261) at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:247) at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:76) at io.undertow.servlet.handlers.ServletInitialHandler$1$1.run(ServletInitialHandler.java:172) at java.security.AccessController.doPrivileged(Native Method) at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:169) at io.undertow.server.Connectors.executeRootHandler(Connectors.java:197) at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:759) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: java.io.IOException: No such file or directory at java.io.UnixFileSystem.createFileExclusively(Native Method) at java.io.File.createTempFile(File.java:2001) at org.apache.poi.util.TempFile$DefaultTempFileCreationStrategy.createTempFile(TempFile.java:105) at org.apache.poi.util.TempFile.createTempFile(TempFile.java:60) at org.apache.poi.xssf.streaming.SheetDataWriter.createTempFile(SheetDataWriter.java:80) at org.apache.poi.xssf.streaming.SheetDataWriter.(SheetDataWriter.java:63) at org.apache.poi.xssf.streaming.SheetDataWriter.(SheetDataWriter.java:68) at org.apache.poi.xssf.streaming.SXSSFWorkbook.createSheetDataWriter(SXSSFWorkbook.java:297) at org.apache.poi.xssf.streaming.SXSSFSheet.(SXSSFSheet.java:68) at org.apache.poi.xssf.streaming.SXSSFWorkbook.createAndRegisterSXSSFSheet(SXSSFWorkbook.java:638) ... 55 more |
Cause | The system fails to create a tmp file which leads in creation of blank .xls reports. |
Resolution | Upgrading to Version 7.0.2 P07 or Version 7.1.0 P01 will fix this issue. |
Workaround | You should check for the directory /tmp/poifiles. If it does not exist, create it manually to fix the problem. Login as the oracle user and perform the following steps to overcome this issue: # ll /tmp/poifiles ls: cannot access /tmp/poifiles: No such file or directory # mkdir /tmp/poifiles |