I would like to get back to a question I posted here earlier. The old thread is this https://coderanch.com/t/641191/open-source/Converting-dynamic-report-JasperReports
. I figured I'd make a new, more brief and specific OP on the question.
So I have a reporting program and I'd like to know if you guys recommend i use iText or JasperReports for generating pdf-reports. The report has a bunch of questions under question groups which are in report parts. The database is JPA 2 (EclipseLink). The way the annotations are set up, i can fetch an entire instance of a filled out report, questions, answers, report part titles and all, in one simple query. So I'm thinking this should be just as easy when working with JasperReports? Basically, the instance of Report has ReportParts which have AnswerGroups which have Answers and Answers. Answers have a reference to the relevant question in a ReportTemplate instance so this is where i get the question for each. These would need to be looped through.
The thing is, there are a few different types of questions and answers (plain text, multiple choice, etc) and these need to be displayed accordingly. I'm not sure if this is something that can be easily done with JasperReports, for example displaying answers to multiple choice questions with checkboxes based on the selection? Can JasperReports be programmed to show data based on the subclass of my Answer class, for example MultipleChoiceAnswer? Right now this is tipping me toward iText as the layout of the report is fairly simple and I think it won't take a huge amount of coding once I get going. Also, pdf's should be enough as output and right now it doesnt seem like other formats will be needed, although I'm not 100% on that. On the other hand I guess JasperReports and iReport and the option of generating in various file formats would be handy and learning to use iReport would be good for future projects.
Thoughts? How easily could this be done with JasperReports? I'm asking so that I would hopefully start on the right path right away.