NextReports is now a mature application which allows to create your reports very easy. Supporting Oracle, MySql, MS SQL, Derby and any other database for which there is a jdbc driver and generating reports in multiple formats like excel, pdf, rtf, html, csv, tsv, NextReports can answer to your reporting needs.
A very simple api to run your reports can be used on the server side. Only with a few lines you can achieve this :
FluentReportRunner.report(report)
.connectTo(connection)
.withQueryTimeout(60) // optional
.withParameterValues(createParameterValues()) // optional (for no parameters)
.formatAs(ReportRunner.HTML_FORMAT)
.run(output);
Probably the most important in report generation is the capability to have server integration : centralized location for all company reports, security to access reports, scheduler process, notifications. These are real needs that will be released as soon as possible in a new server application.