BTL is a template language that combines power of JSTL and XSLT to produce documents in XML, HTML, XHTML, XSL-FO, PDF or other formats, based on the JavaBean input.
The Nheengatu Project is a Java library that provides HTML markup abstraction allowing you to reutilize it to generate PDF files, OpenOffice documents, image files, etc. The goal of this project is to maximize the use of HTML markup procedures.