[#2895] - Missing classes in jaspersoft server

Bug report
Project: Severity:
Component: Reproducibility:
Assigned to:

java.lang.NoClassDefFoundError: net/sf/jasperreports/expressions/functions/errors/JRExpressionFunctionException

- I created a report in Jaspersoft Studio.
- I'm using custom function (according to instructions at http://community.jaspersoft.com/wiki/jaspersoft-studio-expression-editor... )
- I'm using a Sciptlet I've made (took instructions from the ireport ultimate guide)
- I deployed the report to JS
- I created two JAR entries in JS uploading them through web interface (these two jars for my custom function and my scriptlet)
- I've added a resource reference from the report unit to those 2 jars

When I execute the report, i get kind of blank portlet, and the NCDFE java error stated above.

There is some core JAR missing from the JS classpath, which are included in the studio classpath, but i'm being unable to figure out what jar the class is in (looked it up by greping jars and so on).
Also there is no documentation telling how to use custom functions and scriptlets in Jaspersoft Server. Some classloader problems could arise if one choose to upload the jars to the tomcat lib path, or the webapp lib folder.

gaston.martin's picture
Joined: Mar 4 2013 - 4:27am
Last seen: 9 years 3 months ago


  • Assigned:nobody»

Hi Martin.
If you have followed the tutorial I wrote, I suppose you have also took the two jars (jasperreports-expressions-x.y.z.jar and jasperreports-exprfunctions-x.y.z.jar) in order to code your methods.
Unfortunately this stuff is not yet included in the official JR library. I hope it will be very soon. You should add also these jars together with the two (your functions + scriptlet) you already added.
I think this should solve your problem.

Best regards,

  • Assigned:» anonymous

Thanks it worked.
I've found the scriptlet and custom functions very useful. It would be really fine to have a tutorial telling how to handle those jars in J. Server (some people will lend to put them in the common lib folder of tomcat, other in the lib folder of webapp, provided they don't really know how the server does the class loading of jars added to the report unit.
Anyway your tutorial is a really nice one. It helped me a lot.
Best regards!