Where does "$P{SUBREPORT_DIR}" in the error message come from? Are you sure that all subreports on all levels are in the jasperserver repository and the subreport expressions in their parents are ok (like "repo:/..." )? You can try to upload to jasperserver only main report with middle level subreports, also only middle subreport with inner subreports, so you can see where does this error come from. About the iReport, I think it doesn't work in my case because I haven't conected it to jasperserver, but if it works for you, then it's even better :)