private ByteArrayOutputStream pdf()
{
ByteArrayOutputStream out = null;
try
{
String xsl, xml;
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Fop fop = new Fop(MimeConstants.MIME_PDF);
out = new ByteArrayOutputStream();
fop.setOutputStream(out);
Source xsltSrc = new StreamSource(new StringReader(xsl));
Transformer transformer = transformerFactory.newTransformer(xsltSrc);
Result res = new SAXResult(fop.getDefaultHandler());
Source src = new StreamSource(new StringReader(xml));
transformer.transform(src, res);
}
catch (Exception e)
{
}
return out;
}
public void appendToResponse(WOResponse response, WOContext context)
{
ByteArrayOutputStream out = pdf();
if (out == null)
super.appendToResponse(response, context);
String filename;
response.setHeader("application/pdf", "Content-Type");
response.setHeader("" + out.size() + "", "Content-Length");
response.setHeader("attachment;filename=" + filename, "Content-Disposition");
response.setContent(new NSData(out.toByteArray()));
}