RSA Identity Governance & Lifecycle scheduled report generation with attachments in email fails when having a slash (/) in Report Name
2 years ago
Originally Published: 2018-06-05
Article Number
000041915
Applies To
RSA Product Set:  RSA Identity Governance &  Lifecycle
RSA Version/Condition:  7.0.0, 7.0.1, 7.0.2, 7.1.0
 
Issue
In Reports, when there is a forward slash (/, HTML /) in the report name, the scheduling with the option of sending attachment fails.

Below is the error we see in aveksaServer.log:
ERROR (ThreadPool-1) [com.aveksa.server.report.ReportRunnerTask] Failed to generate the report. Report Details: Report[id="148" name="Test/report"], ReportResult[id="306", report-id="148", save-date="Tue Jun 05 01:06:01 EDT 2018", fill-start-date="Tue Jun 05 01:04:35 EDT 2018", status="Completed", type="S", created-by-user="0", type-string="Scheduled Report", description="Scheduled Report", filter="null"], run-status="FAILED"]
java.io.FileNotFoundException: /home/oracle/wildfly/standalone/tmp/vfs/deployment/deploymenta01ddddae3cfb04c/aveksa.war-4cca8bb149afacf8/WEB-INF/../report_images/Test/report.CSV (No such file or directory)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:221)
at java.io.FileOutputStream.<init>(FileOutputStream.java:110)
at com.aveksa.server.report.Report.saveForEmail(Report.java:1376)
at com.aveksa.server.report.ReportRunnerTask.process(ReportRunnerTask.java:115)
at com.aveksa.server.scheduler.ScheduledTask$Executor.execute(ScheduledTask.java:159)
at com.aveksa.common.ThreadPool$Executor.run(ThreadPool.java:141)
at java.lang.Thread.run(Thread.java:745)

Steps to reproduce

  1. On the General tab, create a custom report with the name Test/report.
  2. On the Query tab, put any simple query: for example, select 1 from dual.
  3. ​From the Schedule and E-Mail tab, schedule the report and select Attach the report result to the email (sent when scheduled).
User-added image
 
User-added image
Cause
The system translates the forward slash in the report name as a directory, so it looks for the attachment in a location that does not exist.   For example, /home/oracle/wildfly/standalone/tmp/vfs/deployment/deploymenta01ddddae3cfb04c/aveksa.war-4cca8bb149afacf8/WEB-INF/../report_images/Test/report.CSV

It throws the error No such file or directory.

Resolution
This issue is fixed in 7.0.2 P07 and 7.1.0 P01. Deploy the respective patches to have this issue resolved.