List of usage examples for org.jsoup.select Elements append
public Elements append(String html)
From source file:com.jaspersoft.android.jaspermobile.data.repository.report.page.HtmlPageCreator.java
@Override @NonNull//from w w w .j a va 2s .c o m public ReportPage create() throws Exception { String range = pageRequest.getRange(); PageRange pageRange = PageRange.parse(range); ReportExportOptions options = ReportExportOptions.builder() .withFormat(ReportFormat.valueOf(pageRequest.getFormat())).withPageRange(pageRange).build(); ReportExport export = execution.export(options); ReportExportOutput output = export.download(); InputStream reportExport = output.getStream(); InputStream customScript = context.getAssets().open("rest-report.js"); try { Reader reader = new InputStreamReader(customScript); Template template = Mustache.compiler().compile(reader); int pageIndex = Integer.valueOf(range) - 1; Map<String, Object> data = new HashMap<>(); data.put("jasperPrintName", execution.getExecutionId()); data.put("pageIndex", pageIndex); data.put("isPro", server.isProEdition()); String customJs = template.execute(data); DataNode indexHeadScript = DataNode.createFromEncoded("<script>" + customJs + "</script>", ""); Document document = Jsoup.parse(reportExport, Charset.defaultCharset().name(), ""); Elements head = document.getElementsByTag("head"); head.append(indexHeadScript.toString()); byte[] exportContent = document.toString().getBytes(Charset.forName("UTF-8")); return new ReportPage(exportContent, output.isFinal()); } finally { IOUtils.closeQuietly(reportExport); IOUtils.closeQuietly(customScript); } }