This isn't a thorough tutorial but some pointers on how I've been using JasperReports with JRxml files and Clojure. I have no idea about DynamicJasper.
Here's some stuff you'll need to import.
(ns app.reports
(:require [clojure.java.io :as io]
[clojure.string :as s])
(:import [net.sf.jasperreports.engine
JasperCompileManager
JasperFillManager
JasperPrint
JasperExportManager
JREmptyDataSource
JRExporter
JRException]))
Compile your jrxml file:
(def my-report
(JasperCompileManager/compileReport
(io/input-stream
(io/file "my-report.jrxml"))))
Use a Java HashMap
with the data / columns you'll pass in to your report to fill it.
(def report-data
(java.util.HashMap. {"attrname_1" "Attr 1 String"
"attrname_2" "More data..."}))
Fill your report with data from a source:
(def filled-report
(JasperFillManager/fillReport my-report report-data (JREmptyDataSource.)
Export your report. Here's how to do it as a PDF.
(JasperExportManager/exportReportToPdfFile filled-report "result.pdf")
I hope this helps you get started.