iReport -> JasperSoft Studio

We have a bunch of reports that were created with iReport 4.0, they continue to work in Servoy client.
But now we want to change one of these reports and because iReport is replaced by JasperSoft Studio, we want to use that to maintain the reports.

So we have installed JasperSoft Studio 5.6.0 (as written in the jasperreport plugin wiki).
But when we want to compile these reports we get a long list of errors:

net.sf.jasperreports.engine.JRException: Errors were encountered when compiling report expressions class file:
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
calculator_MeldingAfdruk_1436535229687_905685: 18: unable to resolve class net.sf.jasperreports.compilers.GroovyEvaluator
@ line 18, column 1.
calculator_MeldingAfdruk_1436535229687_905685: 28: unable to resolve class JRFillParameter
@ line 28, column 5.
calculator_MeldingAfdruk_1436535229687_905685: 29: unable to resolve class JRFillParameter
@ line 29, column 5.
calculator_MeldingAfdruk_1436535229687_905685: 30: unable to resolve class JRFillParameter
@ line 30, column 5.

This is just a sample of the errorlist.
Do we have to convert the reports to make them compatible with JasperSoft Studio?

Hi Jos,

You can set the Jasper report version in Studio.

Regards,

Hi Lambert,

We’ve tried that, but the error remain.

Hi, Jos.

When you upgraded to Jasper Studio 5.6.0, did you also upgrade the Servoy JasperReports Plugin to 5.0.0a2 per the Servoy Forge wiki?

We are pleased to announce that a new version of the Servoy JasperReports Plugin, version 5.0.0 alpha 1, is ready and available for download.
The current version (which is now trunk/head in the source repository) is based on the 5.5.1 version of the JasperReports engine.

Although Jasper recommends using the Groovy language for reports, we found that it causes problems with the Plugin. Consider switching your report language to Java for better compatibility with the Plugin. Be warned, things that were permissible in Groovy will generate errors when you switch to Java (ask me how I know this). Sometimes, a report will not run, and no errors are generated. Other times, the error message may be misleading. Below are some differences we encountered:

With the 5.5.1 and up engine, we discovered that the Jasper Report SQL dialect has changed somewhat in the WHERE clause usage. For example:

WHERE item IN ( ‘A’, ‘B’ )

which worked in engine 4.0, failed and had to be changed to:

WHERE item = ‘A’ OR item = ‘B’

in version 5.5.x. Read about the $X parameter usage in the Studio User Guide for more information on WHERE clause modification.

We also found differences using single and double quotes with Studio. For Java strings, always use double quotes. For SQL strings, always use single quotes.

I hope this helps you with the migration to Studio 5.6.0!

Hi Kim,

kwpsd:
When you upgraded to Jasper Studio 5.6.0, did you also upgrade the Servoy JasperReports Plugin to 5.0.0a2 per the Servoy Forge wiki?

Yes we did.

kwpsd:
Although Jasper recommends using the Groovy language for reports, we found that it causes problems with the Plugin. Consider switching your report language to Java for better compatibility with the Plugin. Be warned, things that were permissible in Groovy will generate errors when you switch to Java (ask me how I know this). Sometimes, a report will not run, and no errors are generated. Other times, the error message may be misleading.

Thanks for the tips, we will have a look at that.

Although Jasper recommends using the Groovy language for reports, we found that it causes problems with the Plugin.

We don’t see any Groovy related problems when running Jasper reports from the plugin…

Better file an issue on ServoyForge.