V práci jsem seznamoval s produkty
Jasper Reports od společnosti
Jaspersoft, která je vlastněná společností
TIBCO Software. Hlavním důvodem je generování reportů např. v PDF získaných z
ElasticSearch nebo
Zabbix.
Nejprve jsem instaloval
JasperReports Server, což je Java aplikace běžící pod Apache Tomcat. Defaultní instalace využívá databázi PostgreSQL, ale můj požadavek byl JR Server provozovat s MySQL. Volil jsem tedy instalaci WAR využívající
js-install script. Stáhnul jsem si tedy
jasperreports-server-cp-5.6.1-bin.zip. Volil jsem starší verzi, protože mým cílem bylo zprovoznit rozšíření od
Wedjja -
https://github.com/WedjaaOpen. Které umožňuje JR Serveru komunikovat a dotazovat se pomoci JSON ElasticSearch. Aktualní verze
ElasticJasperServer nepodporuje poslední verzi JR Serveru 6.x. Projekt je velmi dobře dokumentován, proto instalace JR Serveru i pluginu ElasticJasperServer není nikterak složitá.
Pro vytvoření samotných reportů se používá aplikace
JasperReports Studio, která je postavena na základech vývojového prostředí
Eclipse. JR Studio a JR Server spolu komunikují a vytvořené reporty je možno snadno publikovat na serveru, kde se patřičný report nechá vykonávat pravidelně a může zasílat výsledné reporty emailem nebo je uploadovat na FTP server.
JR Studio se též neobejde bez pluginu do ElasticSearch. Je třeba doinstalovat
ElasticJasper. Podrobný popis jak na to je pěkně popsán na
blogu Wedjja.
Samotná tvorba reportů
JRXML není úplně jednoduchou disciplínou, ale výsledky mohou být velmi zajímavé.
JasperReports je v Java světě zjevně hodně znám. Čistě náhodou jsem si všiml, že účetnictví
FlexiBee používá pro tisk právě
JasperReports Library.