1
我有一個JSP頁面,我試圖開發新的功能來從該JSP頁面生成PDF以將其作爲附件發送給用戶。將XHTML文件中的PDF文件附加到電子郵件
我能夠將JSP轉換爲速度模板並將其作爲HTML文件發送給用戶,但是當我嘗試使用fly源lib發送PDF附件時,我得到了(無法加載PDF文檔)到該附件文件。
這裏就是我想要做的,
try {
MimeMessage mm = javaMailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(mm,true);
helper.setSentDate(new Date());
helper.setSubject(subject);
helper.setFrom(from);
helper.setTo(to.trim());
LOG.debug("**Getting here");
Map<String, Object> model = new HashMap<>();
model.put("date", new DateTool());
//Get the report as html
String xmltoConvert = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine,
"toConvert.xhtml", StandardCharsets.UTF_8.name(), model);
// tring to convert xhtml to PDF
ByteArrayResource htmlBytes = new ByteArrayResource(xmltoConvert.getBytes(StandardCharsets.UTF_8));
final ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
org.w3c.dom.Document document = XMLResource.load(new ByteArrayInputStream(xmltoConvert.getBytes())).getDocument();
ITextRenderer renderer = new ITextRenderer();
renderer.setDocument(document, null);
renderer.layout();
renderer.createPDF(byteArrayOutputStream);
renderer.finishPDF();
byteArrayOutputStream.close();
helper.addAttachment(subject + ".pdf", htmlBytes);
javaMailSender.send(mm);
}
能否請你幫在這裏,我在我缺少的是什麼?