The only way I know to do this with JasperReports is to use a separate .jrxml file for sub-reporting and include it in the main report using the subreport command.
Another option you have for any built-in reports is to use subjects, but as far as I know, they are only useful for graphs.
It looks like you are managing code related to report generation, you can create a simple format for defining several reports on one line, and then have your code retrieve each report at run time.
When we need to deal with one file, but there are signatures for JasperReport, we used Zip files and simply fixed the main report and all the necessary sub-reports, and then unpacked them into a temporary directory when we needed (everything is in the code, of course)
source share