Welcome to Knowage Q&A, where you can ask questions and receive answers from other members of the community.
0 votes
1 view

In the knowagejasperreports deployment in 6.0.0 CE, there are the following files:

  • jasperreports-6.1.0.jar
  • jasperreports-applet-4.0.0.jar
  • jasperreports-chart-themes-6.1.0.jar
  • jasperreports-fonts-6.0.0.jar
  • jasperreports-javaflow-4.0.0.jar

With all these files there, it appears that the 4.0.0 JasperReports engine is the one being picked up first in the classpath. By removing jasperreports-applet-4.0.0jar and jasperreports-javaflow-4.0.0.jar, then adding jasperreports-functions-6.1.0.jar and joda-time-2.9.3.jar to WEB-INF/lib in the knowagejasperreports deployment, I was able to get jrxml generated by newer versions of JasperReports Studio to work correctly (including the functions such as CONCATENATE(), NOW(), etc).

Is the intended behavior to have 4.0.0 override everything?

Environment linux
in Reporting by (160 points)

2 Answers

0 votes
 
Best answer

Dear Scott

thanks for noticing the issue! 

Having different JasperReports libraries doesn't make sense actually, but recently we moved to Maven and therefore we simplified dependencies management. Last Knowage version (6.1.1) is more clean since it ships:

jasperreports-6.1.0.jar
jasperreports-chart-themes-6.1.0.jar
jasperreports-fonts-6.0.0.jar

We need to check why fonts version is 6.0.0 (maybe a typo), and to add functions...

Thanks and best regards

by (2.3k points)
selected by
Update: jasperreports-fonts-6.1.0 is not available on Maven Central nor or jaspersoft.artifactoryonline, that's why we put 6.0.0
0 votes

I think you can remove them all and only leave

  • jasperreports-6.1.0.jar
I have been experimenting. You can actually go up to jaspereports-6.4.0.jar make sure you have poi-3.14 for this version of jasper. ANy higher version will get an error because there is a deprecated method call in higher versions of poi 
by (450 points)
...