jasper report error in Mac OSX

Server:
OS: Windows 2003
Servoy version: 3.5.6
Java: 1.5.0_11-b03

Client:
OS: Mac OSX 10.4.x
Servoy version: 3.5.6
Java: 1.5 (J2SE 5.0)

When I run any reports from servoy client I am getting error dialog as follows:

java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/jasperPrint

Please help!

From windows client there is no issue.

try clearing the java cache on the mac client, and reinstalling Servoy Client. instructions below to clear the cache. http://www.servoyguy.com/knowledge_base … java_cache

I have tried your instructions on two Mac machines and they provide the same issue. Can you please help?

Thanks.

Hi Scott,

Do you have any idea about this issue?

Thanks

Can you tell me what version of the plugin you are using?

I am not sure how to check the plugin version but I guess this is the latest version of plugin supplied to me by some one from servoy.

Hi Edward,

Please help on this. I need to help my client urgently.

Thanks a lot.

Doesn’t it work on any client, or just on a MAC client?

Just the Mac client only

Can you post the entire error from the log?

Here it is

org.mozilla.javascript.JavaScriptException: java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/JasperPrint
	at org.mozilla.javascript.JavaScriptException.wrapException(JavaScriptException.java:71)
	at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:368)
	at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1254)
	at org.mozilla.javascript.gen.c543.call(mod_reportmaker_showReportContinue:85)
	at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1254)
	at org.mozilla.javascript.gen.c540.call(mod_reportmaker_showReport:49)
	at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1254)
	at org.mozilla.javascript.gen.c128.call(act_print:22)
	at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1254)
	at org.mozilla.javascript.gen.c212.call(mod_functions_act_print:2)
	at com.servoy.j2db.scripting.f.executeFunction(Unknown Source)
	at com.servoy.j2db.FormController.a(Unknown Source)
	at com.servoy.j2db.FormController.executeFunction(Unknown Source)
	at com.servoy.j2db.FormController.actionPerformed(Unknown Source)
	at com.servoy.j2db.FormController$a.actionPerformed(Unknown Source)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1882)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2202)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
	at java.awt.Component.processMouseEvent(Component.java:5583)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
	at java.awt.Component.processEvent(Component.java:5348)
	at java.awt.Container.processEvent(Container.java:2010)
	at java.awt.Component.dispatchEventImpl(Component.java:4050)
	at java.awt.Container.dispatchEventImpl(Container.java:2068)
	at java.awt.Component.dispatchEvent(Component.java:3885)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4256)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3936)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3866)
	at java.awt.Container.dispatchEventImpl(Container.java:2054)
	at java.awt.Window.dispatchEventImpl(Window.java:1791)
	at java.awt.Component.dispatchEvent(Component.java:3885)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
	at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/JasperPrint
	at java.lang.Class.getDeclaredMethods0(Native Method)
	at java.lang.Class.privateGetDeclaredMethods(Class.java:2395)
	at java.lang.Class.getMethod0(Class.java:2642)
	at java.lang.Class.getMethod(Class.java:1579)
	at com.servoy.r3.plugins.JasperReportServer_Stub.<clinit>(JasperReportServer_Stub.java:47)
	at sun.misc.Unsafe.ensureClassInitialized(Native Method)
	at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:25)
	at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:122)
	at java.lang.reflect.Field.acquireFieldAccessor(Field.java:917)
	at java.lang.reflect.Field.getFieldAccessor(Field.java:898)
	at java.lang.reflect.Field.getLong(Field.java:527)
	at java.io.ObjectStreamClass.getDeclaredSUID(ObjectStreamClass.java:1586)
	at java.io.ObjectStreamClass.access$700(ObjectStreamClass.java:52)
	at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:408)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:400)
	at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:297)
	at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:531)
	at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1552)
	at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1466)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1699)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
	at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
	at java.rmi.Naming.lookup(Naming.java:84)
	at com.servoy.j2db.J2DBClient.getServerService(Unknown Source)
	at com.servoy.j2db.plugins.ClientPluginAccessProvider.getServerService(Unknown Source)
	at com.servoy.r3.plugins.JasperReportProvider.js_jasperReport(JasperReportProvider.java:279)
	at com.servoy.r3.plugins.JasperReportProvider.js_jasperReport(JasperReportProvider.java:256)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:334)
	at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1254)
	at org.mozilla.javascript.gen.c543.call(mod_reportmaker_showReportContinue:85)
	at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1254)
	at org.mozilla.javascript.gen.c540.call(mod_reportmaker_showReport:49)
	at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1254)
	at org.mozilla.javascript.gen.c128.call(act_print:22)
	at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1254)
	at org.mozilla.javascript.gen.c212.call(mod_functions_act_print:2)
	at com.servoy.j2db.scripting.f.executeFunction(Unknown Source)
	at com.servoy.j2db.FormController.a(Unknown Source)
	at com.servoy.j2db.FormController.executeFunction(Unknown Source)
	at com.servoy.j2db.FormController.actionPerformed(Unknown Source)
	at com.servoy.j2db.FormController$a.actionPerformed(Unknown Source)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1882)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2202)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
	at java.awt.Component.processMouseEvent(Component.java:5583)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
	at java.awt.Component.processEvent(Component.java:5348)
	at java.awt.Container.processEvent(Container.java:2010)
	at java.awt.Component.dispatchEventImpl(Component.java:4050)
	at java.awt.Container.dispatchEventImpl(Container.java:2068)
	at java.awt.Component.dispatchEvent(Component.java:3885)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4256)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3936)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3866)
	at java.awt.Container.dispatchEventImpl(Container.java:2054)
	at java.awt.Window.dispatchEventImpl(Window.java:1791)
	at java.awt.Component.dispatchEvent(Component.java:3885)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
	at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

Any clues please? Thanks a lot!

Did you looked at the jasperReport tab from the servoy preferences? If you see no such tab it means the plugin is not installed correctly and if you see it be sure you put a valid path name in Reports Directory textbox there.

I tried veiwing a report in my MacOS and it works.

I have the jasper report tab in the preference panel and the paths are alright.
Servoy server is windows 2003.
Clients using windows XP can run the reports properly.
Only the Mac clients have problem.

Anything from Servoyians (experts)

Thanks a lot!

Anything from Servoyians (experts) here?

Please help! I am really stuck here.

Thanks a lot!

So far we haven’t been able to reproduce this.

It must be MAC related, because it only doesn’t work on MAC, but when we tested on MAC, all worked fine.

We are still checking.

Paul

Hi Paul,
Thanks for sending me the latest Jasper Plugin.

But I have got it working using the old plugin itself.

When I tried to replace the new plugin in the server I found that somehow the .jnlp file for jasperreport from the server has been deleted.

Now I have generated a .jnlp file and put it in the server I can access the report without any error.

I had been so silly not to have noticed this earlier. Very sorry!

But my wonder is how the report can run without an error in the windows client without the .jnlp file…

Anyway thanks a lot!!

It probably worked on Windows due to the fact that it had been tried on those machines before and the required stuff was in the cache of the client.

Paul

It may be. But I remember once that I have cleared the cache and tried again and still worked. Anyway I am not thinking about it now as long as it can work.