i am using iReport 3.5.2 and the servoy_ jasperreports plugin 2.1.5 to generate reports. And all works fine if i start from the developer. But if I start from the application server the reports are empty and only one page is shown.
I tried jasperreports 3.0.0 and jasperreports 3.5.2 and both are not working.
Welcome to the “I am frustrated with Jasper reports plugin status”.
Have a look here to follow threads:
The basic issue lies with the iText.jar version in the /servoy/plugins folder.
For iReports and JasperReports 3.5.2 they use iText-2.1.0.jar and this has to be used in ALL the places that is used on the servoy folders and sub-folders.
Additionally if you want to have PDF output there is also the use of iText.jar in that folder - replace it too.
There are other changes as well - the jasperreports-3.5.2.jar has to be used instead of the jasperreports.jar in the
/plugins/servoy_jasperreports folder.
There might have to be other changes as well depending if you want to use the latest alpha version of the serovy plugin (verison 3.0.0a1).
So be aware that wanting to use the latest iReports has dependencies that are not yet implemented in the servoy releases.
Not a straight forward upgrade.
I am thinking of having a Jasper Reports Tips for Servoy section on my site (http://www.prospect-saas.biz) to hold all these snippets in a central location if there is sufficient interest?
I am trying to use the Jasper plugin without success also. I have 3.5.2 ireport installed, created a report and it will generate successfully from ireport.
I have downloaded the plugin for jasper and cannot get the report to display from Servoy. Is there any documentation available that I could read?
I have tried both jar files that were downloaded. I have no idea which one is the correct one. Is there anywhere I can find how to set up this plugin to work on the web and what jar files I need to use and exactly where I need to put them when I am in developer and running from the server?
And how do I set the report directory? I have read the forum Jasper plugin discussions, but still am not able to find the right combination to get this to work.
This issue a show stopper for the application I am about to deploy. I really need to get this to work.
Servoy Version: 4.1.3 - build 672
Sql Server 2005 sp3
A quick repsonse for the place to put the reports directory.
Go to the ADMIN page for the server - under the plugins you can see the place to specify the directory. It might also still be in the preferences tab when you open developer.
I will respond with other tips a bit later - sorry go to go now for Canada Day celebrations here!
Ok I tried to update the Libarys of the Plugin! But if I do so I will get the following ERROR.
I am using:
commons-beanutils.jar (v 1.8.0)
commons-digster.jar (v 1.7)
commons-javaflow.jar (v 200606411)
itext.jar (v 2.1.0)
jasperreports-3.5.2.jar (v 3.5.2)
jdt-compiler.jar (v 3.1.1)
Plugin Version 2.1.5
STARTING REPORT GENERATION
Server-Name: hades Plugin-Version: 2.1.5
Report-Dir: /Volumes/skyphos/projects/Hades 2/development/reports/compiled/ SUBREPORT_DIR: /Volumes/skyphos/projects/Hades 2/development/reports/hades_reports/
Report File Name: A4Portrait.jasper Output Device: Output Format: viewer
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/apache/commons/collections/ReferenceMap
at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.<init>(DefaultExtensionsRegistry.java:97)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at net.sf.jasperreports.engine.util.ClassUtils.instantiateClass(ClassUtils.java:63)
at net.sf.jasperreports.extensions.ExtensionsEnvironment.createDefaultRegistry(ExtensionsEnvironment.java:84)
at net.sf.jasperreports.extensions.ExtensionsEnvironment.<clinit>(ExtensionsEnvironment.java:72)
at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:80)
at net.sf.jasperreports.engine.JRAbstractExporter.setJasperPrint(JRAbstractExporter.java:705)
at net.sf.jasperreports.engine.JRAbstractExporter.setInput(JRAbstractExporter.java:772)
at net.sf.jasperreports.engine.export.JRGraphics2DExporter.exportReport(JRGraphics2DExporter.java:117)
at net.sf.jasperreports.view.JRViewer.paintPage(JRViewer.java:2024)
at net.sf.jasperreports.view.JRViewer$PageRenderer.paintComponent(JRViewer.java:2167)
at javax.swing.JComponent.paint(JComponent.java:1027)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JViewport.paint(JViewport.java:747)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:564)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:34)
at sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:60)
at sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:97)
at java.awt.Container.paint(Container.java:1793)
at sun.awt.RepaintArea.paintComponent(RepaintArea.java:276)
at sun.awt.RepaintArea.paint(RepaintArea.java:241)
at apple.awt.ComponentModel.handleEvent(ComponentModel.java:263)
at apple.awt.CWindow.handleEvent(CWindow.java:319)
at java.awt.Component.dispatchEventImpl(Component.java:4743)
at java.awt.Container.dispatchEventImpl(Container.java:2143)
at java.awt.Window.dispatchEventImpl(Window.java:2475)
at java.awt.Component.dispatchEvent(Component.java:4497)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:635)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections.ReferenceMap
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at com.sun.jnlp.JNLPClassLoader.findClass(JNLPClassLoader.java:257)
at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
at java.lang.ClassLoader.loadClass(ClassLoader.java:254)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:402)
... 60 more
At a quick glance it seems that the common-collections is missing.
Have a look at the jnlp file - apparently it also needs to be downloaded for 3.0.0.a1 and not for earlier versions.
The stack trace also seems to point in the that direction.