ivanooi Posted October 13, 2006 Share Posted October 13, 2006 Hi all, Helps needed! Look like there's some problem with JasperReports in Mac OS X 10.3, runing with JVM 1.4.2! Note that it work in WindowsXP with JVM 1.4.2! I used JasperReports in my SWT application.I think this cause by AWT and SWT thread... and the error are from ObjectInputStream! Any alternative that can replace ObjectInputStream ? Log :- 2006-10-12 23:03:23.594 java[10840] Apple AWT Java VM was loaded on first thread -- can't start AWT.Exception in thread "main" java.lang.InternalError: Can't start the AWT because Java was started on the first thread. Make sure StartOnFirstThread is not specified in your application's Info.plist or on the command line at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1586) at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1503) at java.lang.Runtime.loadLibrary0(Runtime.java:788) at java.lang.System.loadLibrary(System.java:834) at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50) at java.security.AccessController.doPrivileged(Native Method) at java.awt.Toolkit.loadLibraries(Toolkit.java:1437) at java.awt.Toolkit.<clinit>(Toolkit.java:1458) at java.awt.Color.<clinit>(Color.java:250) at sun.misc.Unsafe.ensureClassInitialized(Native Method) at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:20) at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:122) at java.lang.reflect.Field.acquireFieldAccessor(Field.java:779) at java.lang.reflect.Field.getFieldAccessor(Field.java:760) at java.lang.reflect.Field.getLong(Field.java:398) at java.io.ObjectStreamClass.getDeclaredSUID(ObjectStreamClass.java:1478) at java.io.ObjectStreamClass.access$400(ObjectStreamClass.java:47) at java.io.ObjectStreamClass$3.run(ObjectStreamClass.java:335) at java.security.AccessController.doPrivileged(Native Method) at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:333) at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:253) at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:453) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1521) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1626) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:324) at java.util.ArrayList.readObject(ArrayList.java:554) 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:324) at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:838) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1746) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:324) at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:88) at net.sf.jasperreports.engine.util.JRLoader.loadObjectFromLocation(JRLoader.java:249) at net.sf.jasperreports.engine.util.JRLoader.loadObjectFromLocation(JRLoader.java:226) at com.xyprox.prototype.dataEntry.w_report_viewer_obj.of_open(w_report_viewer_obj.java:53) at com.xyprox.prototype.dataEntry.w_report_viewer_obj.<init>(w_report_viewer_obj.java:36) at com.xyprox.prototype.dataEntry.w_report_viewer.createW_data_entry_obj(w_report_viewer.java:47) at com.xyprox.prototype.dataEntry.w_report_viewer.createSShell(w_report_viewer.java:37) at com.xyprox.prototype.dataEntry.w_report_viewer.<init>(w_report_viewer.java:24) at com.xyprox.prototype.dataEntry.w_lookup_main_obj$13.widgetSelected(w_lookup_main_obj.java:685) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1496) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1520) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1505) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1279) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3354) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2981) at com.xyprox.prototype.dataEntry.w_lookup_browser.main(w_lookup_browser.java:45)Post edited by: ivanooi, at: 2006/10/12 18:20 Link to comment Share on other sites More sharing options...
Teodor Danciu Posted October 23, 2006 Share Posted October 23, 2006 Hi, This is not related to ObjectOutputStream at all.It seems to be related to the way AWT works under Mac.I'm not an expert on Mac, so I cannot help too much, I just wanted to tell you it is not about ObjectOutputStream. I hope this helps.Teodor Link to comment Share on other sites More sharing options...
ivanooi Posted October 23, 2006 Author Share Posted October 23, 2006 Ya... I found the problems.... This is the threading issues between SWT and AWT... and this cause by awt.*well... unless JasperReports support SWT or create some kind of mapper to map between java.awt and swt... well... :( Link to comment Share on other sites More sharing options...
Code_Slave Posted October 31, 2006 Share Posted October 31, 2006 try firing up another separate thread, then do your report stuff from this new thread. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now