code: private void compileJasperReport(final Instance _instSource,
                                       final Instance _instCompiled)
          throws EFapsException
      {
          // make the classPath
          final String sep = System.getProperty("os.name").startsWith("Windows") ? ";" : ":";
          final StringBuilder classPath = new StringBuilder();
          for (final String classPathElement : this.classPathElements) {
              classPath.append(classPathElement).append(sep);
          }
          final DefaultJasperReportsContext reportContext = DefaultJasperReportsContext.getInstance();
          reportContext.setProperty(JRCompiler.COMPILER_CLASSPATH, classPath.toString());
          reportContext.setProperty("net.sf.jasperreports.compiler.groovy", JasperGroovyCompiler.class.getName());
          reportContext.setProperty("net.sf.jasperreports.query.executer.factory.eFaps",
                          FakeQueryExecuterFactory.class.getName());
          try {
              final JasperDesign jasperDesign = JasperUtil.getJasperDesign(_instSource);
  
              // the fault value for the language is no information but the used compiler needs a value,
              // therefore it must be set explicitly
              if (jasperDesign.getLanguage() == null) {
                  jasperDesign.setLanguage(JRReport.LANGUAGE_JAVA);
              }
  
              final ByteArrayOutputStream out = new ByteArrayOutputStream();
              JasperCompileManager.compileReportToStream(jasperDesign, out);
  
              final ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
              final Checkin checkin = new Checkin(_instCompiled);
              checkin.executeWithoutAccessCheck(jasperDesign.getName() + ".jasper", in, in.available());
              out.close();
              in.close();
          } catch (final JRException e) {
              throw new EFapsException(JasperReportCompiler.class, "JRException", e);
          } catch (final IOException e) {
              throw new EFapsException(JasperReportCompiler.class, "IOException", e);
          }
      }
docs: Method to compile one JasperReport.
  
  @param _instSource instance of the source
  @param _instCompiled instance of the compiled source
  @throws EFapsException on error