Page 1 of 1

Error with JasperSoft Plugin on Servoy 8.4

PostPosted: Thu Dec 27, 2018 8:03 pm
by jvalencia
Error with JasperSoft Plugin on Servoy 8.4

Servoy 8.4.0rc2
ChartNScript_Servoy_JasperReports_Plugin_v.6.4.1
OS: Windows 10
Java: 1.8

Same plugin works fine on Servoy 8.3

ERROR com.servoy.j2db.util.Debug - org/apache/commons/collections/map/ReferenceMap
at C:\Servoy\all_workspaces\Servoy84_Developer\App4u_Tow01\forms\App4u_Tow_Customer_frm.js:725 (submethod_print_Jasper)
at C:\Servoy\all_workspaces\Servoy84_Developer\App4u_Tow01\forms\App4u_Tow_Customer_frm.js:574 (toolbar_header_Print)
at C:\Servoy\all_workspaces\Servoy84_Developer\App4u_Tow01\forms\App4u_Toolbar.js:668 (toolbar_header_Print)
java.lang.NoClassDefFoundError: org/apache/commons/collections/map/ReferenceMap
at net.sf.jasperreports.engine.component.ComponentsEnvironment.<init>(ComponentsEnvironment.java:56) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.component.ComponentsEnvironment.getInstance(ComponentsEnvironment.java:76) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.xml.JRReportSaxParserFactory.getSchemaLocations(JRReportSaxParserFactory.java:93) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.xml.BaseSaxParserFactory.configureParser(BaseSaxParserFactory.java:153) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.xml.BaseSaxParserFactory.createParser(BaseSaxParserFactory.java:108) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.xml.JRXmlDigesterFactory.createParser(JRXmlDigesterFactory.java:1596) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.xml.JRXmlDigesterFactory.createDigester(JRXmlDigesterFactory.java:1565) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:263) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:219) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:194) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:185) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.JasperCompileManager.compileToFile(JasperCompileManager.java:227) ~[jasperreports-6.4.1.jar:6.4.1]
at net.sf.jasperreports.engine.JasperCompileManager.compileReportToFile(JasperCompileManager.java:542) ~[jasperreports-6.4.1.jar:6.4.1]
at com.servoy.plugins.jasperreports.JasperReportsServer.jasperCompile(JasperReportsServer.java:284) ~[servoy_jasperreports.jar:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_73]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_73]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_73]
at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_73]
at com.servoy.j2db.util.AbstractRemoteInvocationHandler.invokeMethod(AbstractRemoteInvocationHandler.java:77) ~[servoy_shared_8.4.0.3401_rc2.jar:?]
at com.servoy.j2db.util.ThreadingRemoteInvocationHandler$1.run(ThreadingRemoteInvocationHandler.java:79) ~[servoy_shared_8.4.0.3401_rc2.jar:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[?:1.8.0_73]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[?:1.8.0_73]
at java.lang.Thread.run(Thread.java:745) [?:1.8.0_73]
Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections.map.ReferenceMap
at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[?:1.8.0_73]
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_73]
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_73]
... 23 more
JavaException: java.lang.Exception: org/apache/commons/collections/map/ReferenceMap
at C:\Servoy\all_workspaces\Servoy84_Developer\App4u_Tow01\forms\App4u_Tow_Customer_frm.js:725 (submethod_print_Jasper)
at C:\Servoy\all_workspaces\Servoy84_Developer\App4u_Tow01\forms\App4u_Tow_Customer_frm.js:574 (toolbar_header_Print)
at C:\Servoy\all_workspaces\Servoy84_Developer\App4u_Tow01\forms\App4u_Toolbar.js:668 (toolbar_header_Print)

Re: Error with JasperSoft Plugin on Servoy 8.4

PostPosted: Thu Dec 27, 2018 10:55 pm
by rgansevles
The commons-collections library has been upgraded in Servoy 8.4
The jasper reports plugin needs to be adjusted for that.
Please file an issue at https://www.servoyforge.net/projects/se ... perreports

Rob

Re: Error with JasperSoft Plugin on Servoy 8.4

PostPosted: Fri Dec 28, 2018 10:42 am
by rgansevles
Servoy upgraded commons-collections from 3 to 4.
As a workaround, adding commons-collections 3 jar to the plugin directory will probably fix this issue.
A proper fix to the plugin is still needed, though.

Re: Error with JasperSoft Plugin on Servoy 8.4

PostPosted: Fri Dec 28, 2018 2:14 pm
by jcompagner
you can download the 3.2.2 version from here: https://commons.apache.org/proper/commo ... ctions.cgi

created a case: https://support.servoy.com/browse/SVY-13162 to add that jar by default in the plugin

Re: Error with JasperSoft Plugin on Servoy 8.4

PostPosted: Fri Dec 28, 2018 4:59 pm
by jvalencia
Thanks Johan, that seems to work

I copied the commons-collections-3.2.2.jar to plugins folder

Re: Error with JasperSoft Plugin on Servoy 8.4

PostPosted: Thu May 09, 2019 11:19 am
by omar
The link appears to be broken. The files can be found in the download area however. For now, this one works: http://apache.mirror1.spango.com//commons/collections/binaries/commons-collections-3.2.2-bin.zip

Re: Error with JasperSoft Plugin on Servoy 8.4

PostPosted: Fri Aug 30, 2019 2:22 pm
by omar
A new version has been published on ServoyForge that includes the commons-collections. It works fine in developer now. However when I try to deploy a war file that includes the JasperSoft plugin it fails to load on the Apache Server. Does anybody know how to get it to work on the server?

Re: Error with JasperSoft Plugin on Servoy 8.4

PostPosted: Fri Aug 30, 2019 6:16 pm
by kwpsd
Omar,

We have the same issue with Jasper Reports in a WAR deployment on any version above 8.3. See response by skrizvi:

https://forum.servoy.com/viewtopic.php?f=69&t=22487&p=120326#p120326

We have been trying for 2 months to get this to work. If you find a solution, please post...we will do the same.

Thanks!

Re: Error with JasperSoft Plugin on Servoy 8.4

PostPosted: Fri Aug 30, 2019 8:32 pm
by sean
Hi Kim,

Do you get the same exact error ? (ClassNotFoundException)
Please file a support case with the relevant details and we'll take a look.
Perhaps you have another version of this jar somewhere in your calsspath and it is loading first

Best,
Sean

Re: Error with JasperSoft Plugin on Servoy 8.4

PostPosted: Thu Sep 05, 2019 9:31 am
by omar
My problem is a little different. If I include the jaspersoft plugin in my war file and upload the war file to the server it reaches 2%, starts over, reaches 2% again and fails... If I don't include it, the upload works fine. That said, I decided to see if I could find a log file with the answer, should have done that right away. In the Tomcat 9.0/logs folder there are several log files, look for the one that says manager.<recent date>.log. The error turned out to be caused by the war file becoming to big:

30-Aug-2019 14:56:47.276 SEVERE [http-nio-8080-exec-36] org.apache.catalina.core.ApplicationContext.log HTMLManager: FAIL - Deploy Upload Failed, Exception: [org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (75602071) exceeds the configured maximum (52428800)]
java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (75602071) exceeds the configured maximum (52428800)

The solution in my case is to change the configuration so it allows larger war files. To do that edit the XML file in the <Tomcat home>/webapps/manager/WEB-INF/web.xml. For more details see https://tecadmin.net/increase-tomcat-upload-file-size-limit/