Of course you can create PDF files without any server... If it is a simple Java application (Java SE) you might use this: public class MyReport{ static HashMap<String, Object> hm = new HashMap<String, Object>(); public static void main(String[] args) { hm.put("myID" , 1); // Integer hm.put("myName" , "Timbo"); // String hm.put(...); String in = "c:/PATH/TO/YOUR/REPORT.jrxml"; String out = "c:/PATH/TO/YOUR/PDF.pdf"; try { // compile report JasperReport jasperReport = JasperCompileManager.compileReport(in); // fill report JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, hm, new JREmptyDataSource()); // export report to PDF JasperExportManager.exportReportToPdfFile(jasperPrint, out); } catch (JRException e) { e.printStackTrace(); } }}[/code]