Defect #814
ExeptionInInitializerError jasper plugin in webclient
100%
Description
Hi,
we have a strange problem with the Jasper plugin.
We are in the middle of converting our solution from smart-client to web-client.
When we test the webclient (without testing first, the smart-client) the servoy debugger just stops after calling: plugins.jsperPluginRMI.runReport..... No error nothing (I have even have a try and catche(e) around it.
I see this error in the servoy log:
2014-06-02 13:33:12,484 ERROR [http-7272-6] com.servoy.j2db.util.Debug - RuntimeException in the ServoyFilter.doGet [ ]
java.lang.ExceptionInInitializerError at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:121) at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:88) at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:103) at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:61) at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:153) at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:55) at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:446) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:849) at com.servoy.plugins.jasperreports.JasperReportRunner.getJasperPrint(JasperReportRunner.java:461) at com.servoy.plugins.jasperreports.JasperReportsServer.getJasperPrint(JasperReportsServer.java:279) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.servoy.j2db.util.AbstractRemoteInvocationHandler.invokeMethod(AbstractRemoteInvocationHandler.java:77) at com.servoy.j2db.util.ThreadingRemoteInvocationHandler$1.run(ThreadingRemoteInvocationHandler.java:79) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Caused by: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [net.sf.jasperreports.engine.fonts.SimpleFontFamily] for bean with name 'fontBean133665687578459320' defined in URL [jar:file:/D:/Servoy/Servoy72/developer/../application_server/plugins/servoy_jasperreports/font_extension.jar!/fonts/fonts1336656875784.xml]; nested exception is java.lang.ClassNotFoundException: net.sf.jasperreports.engine.fonts.SimpleFontFamily at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1138) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:524) at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1174) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:222) at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:202) at net.sf.jasperreports.extensions.SpringExtensionsRegistry.findExtensionBeanNames(SpringExtensionsRegistry.java:100) at net.sf.jasperreports.extensions.SpringExtensionsRegistry.getExtensionBeanNames(SpringExtensionsRegistry.java:91) at net.sf.jasperreports.extensions.SpringExtensionsRegistry.getExtensions(SpringExtensionsRegistry.java:67) at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:110) at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:83) ... 19 more Caused by: java.lang.ClassNotFoundException: net.sf.jasperreports.engine.fonts.SimpleFontFamily at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526) at org.springframework.util.ClassUtils.forName(ClassUtils.java:242) at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:383) at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1135) ... 28 more
The strange thing is that if I run a smart-client (debug) first and after that webclient, everything runs fine.
We DO use the font-extension.jar, and we have added that and the spring-beans & spring_core added to the jnlp
<?xml version="1.0" encoding="UTF-8"?> <jnlp spec="1.0+" codebase="%%serverURL%%" href="/servoy-client/plugins/servoy_jasperreports.jar.jnlp"> <information> <title>Servoy Client Plugins</title> <vendor>Servoy and Others</vendor> </information> <resources> <j2se version="1.6+"/> <jar href="/plugins/servoy_jasperreports.jar" download="eager" version="%%version%%"/> <jar href="/plugins/servoy_jasperreports/commons-io.jar" download="lazy" part="commons-io" version="%%version%%"/> <package name="org.apache.commons.io.*" part="commons-io" recursive="true"/> <jar href="/lib/commons-collections.jar" download="lazy" part="commons-collections" version="%%version%%"/> <package name="org.apache.commons.collections.*" part="commons-collections" recursive="true"/> <jar href="/lib/commons-logging.jar" download="lazy" part="commons-logging" version="%%version%%"/> <package name="org.apache.commons.logging.*" part="commons-logging" recursive="true"/> <jar href="/lib/commons-dbcp.jar" download="lazy" part="commons-dbcp" version="%%version%%"/> <package name="org.apache.commons.dbcp.*" part="commons-dbcp" recursive="true"/> <package name="org.apache.commons.jocl.*" part="commons-dbcp" recursive="true"/> <jar href="/plugins/servoy_jasperreports/jasperreports-4.6.0.jar" download="eager"/> <jar href="/plugins/servoy_jasperreports/commons-beanutils-1.8.0.jar" download="lazy" part="commons-beanutils" version="1.8.0"/> <package name="org.apache.commons.beanutils.*" part="commons-beanutils" recursive="true"/> <jar href="/plugins/servoy_jasperreports/commons-digester-2.1.jar" download="lazy" part="commons-digester" version="2.1"/> <package name="org.apache.commons.digester.*" part="commons-digester" recursive="true"/> <jar href="/plugins/servoy_jasperreports/groovy-all-1.7.5.jar" download="lazy" part="groovy" version="1.7.5"/> <package name="org.codehaus.groovy.*" part="groovy" recursive="true"/> <package name="groovy.*" part="groovy" recursive="true"/> <package name="groovyjarjarantlr.*" part="groovy" recursive="true"/> <package name="groovyjarjarasm.asm.*" part="groovy" recursive="true"/> <package name="groovyjarjarcommonscli.*" part="groovy" recursive="true"/> <jar href="/plugins/servoy_jasperreports/iText-2.1.7.jar" download="lazy" part="itext" version="2.1.7"/> <package name="com.lowagie.*" part="itext" recursive="true"/> <jar href="/plugins/servoy_jasperreports/jdt-compiler-3.1.1.jar" download="lazy" part="jdt-compiler" version="3.1.1"/> <package name="org.eclipse.jdt.*" part="jdt-compiler" recursive="true"/> <jar href="/plugins/servoy_jasperreports/poi-3.7-20101029.jar" download="lazy" part="poi" version="3.7"/> <package name="org.apache.poi.*" part="poi" recursive="true"/> <jar href="/plugins/servoy_jasperreports/spring-beans-2.5.5.jar" download="lazy"/> <jar href="/plugins/servoy_jasperreports/spring-core-2.5.5.jar" download="lazy"/> <jar href="/plugins/servoy_jasperreports/font_extension.jar" download="lazy"/> </resources> <component-desc></component-desc> <security> <all-permissions/> </security> </jnlp>
History
Updated by Harjo Kompagnie almost 11 years ago
I upgraded to 4.0.2 final version, and even with that version, I get the same error
Updated by Andrei Costache almost 11 years ago
- Status changed from New to Closed
- Assignee set to Andrei Costache
- % Done changed from 0 to 100
Updated by Andrei Costache almost 11 years ago
Fixed in trunk and 4.x version.
The fix will be available in the next public release of both plugin versions.
Updated by Harjo Kompagnie over 10 years ago
Can you give an estimate, of when the next 4.x build will come?
It's becoming more critical for us, that this get fixed/released