Nayn
Nayn

Reputation: 3614

Compiling JasperReports automatically on change

I am working on a web application. We are using jasperreports. Compiling jasperreports on every call is an overhead and takes considerable time (4-7 seconds). We thought of precompiling the jrxmls using Spring but still have the ability to re-generate if the jrxml is changed/modified. Has anybody done this before? If yes, how. Thanks

Upvotes: 2

Views: 541

Answers (2)

Sherman Wood
Sherman Wood

Reputation: 36

I don't know your application, but you could look at using JasperServer. This web app has a repository and processes that manage JRXML content and compilation. You could access the app via web services.

Upvotes: 0

Bozho
Bozho

Reputation: 597114

  • You can schedule a timer which re-compiles new jasper reports every X hours (check here)
  • You can load the jrxml as File and check its lastModified(), store it in a database (or a HashMap), and on each subsequent need for the jrxml to compare the lastModified() to the value in the database / HashMap and recompile it only if they differ
  • combine the two methods above
  • create a simple interface (a password-protected page) that lists all jrxml files with a button "compile", so that whenever you change something, you go to that page and indicated which jrxmls should be recompiled.

Upvotes: 1

Related Questions