Developing Reporting Services for Java webapp

The question asked.

Earlier this year, I developed an online app for online testing. I used Freemarker Java Servlets and Templates and followed the MVC paradigm completely.

One of the missing features of the app is that it doesn't provide reports. The original design of the application did not consider reporting as part of the core due to various limitations, not necessarily technical. Reporting Services as needed should now allow users to retrieve their reports online at any time, as well as download them in predefined formats.

The application has turned into a stage where I would not like to put more code into it and want to isolate the core modules and develop future needs around this core.

I would like to hear some ideas on how to continue developing this reporting service around the main application.

And what reporting tools can I use? I've used Jasper in the past, but I've heard that BIRT is good too. Throw in your suggestions.

+1


source to share


3 answers


Whereas Jasper is a pretty good choice if you have fairly advanced requirements such as:

  • Support for esoteric formats
  • Parent Child Reports
  • Graphs and graphs


But if you really need to display tabular reports in popular formats like HTML / PDF / XLS, then you can go a long way with diplaytag , with much less effort than Jasper requires.

A simple tabular report contains about 20 lines of JSP code using displaytag, but the same report requires about 500 lines of XML using Jasper. I would investigate if displaytag can meet your requirements before moving on to a "heavyweight reporting solution" like BIRT / Jasper.

+3


source


I would recommend Jasper because I have used it in the past and found it quite easy to set up and use. You can integrate it into your application without too much trouble.



I only heard good about BIRT , but never implemented it myself.

+1


source


I would recommend art: http://art.sourceforge.net/ . We use this tool without any problem. It is still active, so if you add a new feature, you can add a request for it.

0


source







All Articles