Hi,
I am having troubles with JxBrowser and jnlp. My application runs fine on Mac OSX, Win 7 and Win XP. However, it crashes on Ubuntu. Looks like it cannot find the native library libjniwrap.so which is included in the resources. The trace looks like this:
Reading certificates from 3460 http://10.0.1.20:8080/ULCBrowser-sample/lib2/ULCBrowser-client.jar | /home/bsch/.java/deployment/cache/6.0/12/7ebde90c-4193813f.idx
Reading certificates from 2116 http://10.0.1.20:8080/ULCBrowser-sample/lib2/ULCBrowser-shared.jar | /home/bsch/.java/deployment/cache/6.0/11/3646714b-50595795.idx
Reading certificates from 76538 http://10.0.1.20:8080/ULCBrowser-sample/lib2/ulc-all5-client.jar | /home/bsch/.java/deployment/cache/6.0/31/2c840a1f-38684e50.idx
Reading certificates from 27802 http://10.0.1.20:8080/ULCBrowser-sample/lib2/log4j-1.2.15.jar | /home/bsch/.java/deployment/cache/6.0/13/2e2398d-30254ff3.idx
Reading certificates from 41464 http://10.0.1.20:8080/ULCBrowser-sample/lib2/jxbrowser-2.0.jar | /home/bsch/.java/deployment/cache/6.0/28/61ee91c-3ca4ad6f.idx
Reading certificates from 5592 http://10.0.1.20:8080/ULCBrowser-sample/lib2/jniwrap-native.jar | /home/bsch/.java/deployment/cache/6.0/40/52c864e8-3607c54c.idx
Reading certificates from 45303 http://10.0.1.20:8080/ULCBrowser-sample/lib2/engine-gecko.jar | /home/bsch/.java/deployment/cache/6.0/51/1daa4c73-208f6285.idx
Reading certificates from 6402 http://10.0.1.20:8080/ULCBrowser-sample/lib2/MozillaGlue.jar | /home/bsch/.java/deployment/cache/6.0/20/36aa24d4-4e9fde17.idx
Reading certificates from 92071 http://10.0.1.20:8080/ULCBrowser-sample/lib2/MozillaInterfaces.jar | /home/bsch/.java/deployment/cache/6.0/9/11ea9749-4dede163.idx
Reading certificates from 6934 http://10.0.1.20:8080/ULCBrowser-sample/lib2/slf4j-api-1.5.8.jar | /home/bsch/.java/deployment/cache/6.0/21/40b5e795-2353e306.idx
Reading certificates from 5764 http://10.0.1.20:8080/ULCBrowser-sample/lib2/slf4j-log4j12-1.5.8.jar | /home/bsch/.java/deployment/cache/6.0/45/68bbabed-2d2ec68f.idx
Reading certificates from 18603 http://10.0.1.20:8080/ULCBrowser-sample/lib2/tuxpack-0.2.jar | /home/bsch/.java/deployment/cache/6.0/4/120bc744-17d0f4fd.idx
Reading certificates from 5458 http://10.0.1.20:8080/ULCBrowser-sample/lib2/xulrunner-linux.jar | /home/bsch/.java/deployment/cache/6.0/44/21fa19ac-55f4b8fa.idx
Trace level set to 5: all ... completed.
network: Connecting http://10.0.1.20:8080/ULCBrowser-sample//ulc with cookie "JSESSIONID=DF835C0D04790CC81AAB7C60F374B0B6"
network: Connecting http://10.0.1.20:8080/ULCBrowser-sample//ulc with proxy=DIRECT
network: Connecting http://10.0.1.20:8080/ULCBrowser-sample//ulc with cookie "JSESSIONID=DF835C0D04790CC81AAB7C60F374B0B6"
network: Connecting http://10.0.1.20:8080/ULCBrowser-sample//ulc with proxy=DIRECT
network: Connecting http://10.0.1.20:8080/ULCBrowser-sample//ulc with cookie "JSESSIONID=DF835C0D04790CC81AAB7C60F374B0B6"
network: Connecting http://10.0.1.20:8080/ULCBrowser-sample//ulc with proxy=DIRECT
network: Connecting http://10.0.1.20:8080/ULCBrowser-sample//ulc with cookie "JSESSIONID=DF835C0D04790CC81AAB7C60F374B0B6"
security: JAVAWS AppPolicy Permission requested for: http://10.0.1.20:8080/ULCBrowser-sample/lib2/slf4j-api-1.5.8.jar
security: Istrusted: http://10.0.1.20:8080/ULCBrowser-sample/JxBrowser.jnlp true
security: JAVAWS AppPolicy Permission requested for: http://10.0.1.20:8080/ULCBrowser-sample/lib2/slf4j-log4j12-1.5.8.jar
security: Istrusted: http://10.0.1.20:8080/ULCBrowser-sample/JxBrowser.jnlp true
security: JAVAWS AppPolicy Permission requested for: http://10.0.1.20:8080/ULCBrowser-sample/lib2/log4j-1.2.15.jar
security: Istrusted: http://10.0.1.20:8080/ULCBrowser-sample/ULCBrowser-sample.jnlp true
network: Looking up native library: libjniwrap.so
network: Native library libjniwrap.so not found
log4j:WARN No appenders could be found for logger (com.jniwrapper.DefaultLibraryLoader).
log4j:WARN Please initialize the log4j system properly.
security: JAVAWS AppPolicy Permission requested for: http://10.0.1.20:8080/ULCBrowser-sample/lib2/engine-gecko.jar
security: Istrusted: http://10.0.1.20:8080/ULCBrowser-sample/JxBrowser.jnlp true
security: JAVAWS AppPolicy Permission requested for: http://10.0.1.20:8080/ULCBrowser-sample/lib2/MozillaGlue.jar
security: Istrusted: http://10.0.1.20:8080/ULCBrowser-sample/JxBrowser.jnlp true
security: JAVAWS AppPolicy Permission requested for: http://10.0.1.20:8080/ULCBrowser-sample/lib2/MozillaInterfaces.jar
security: Istrusted: http://10.0.1.20:8080/ULCBrowser-sample/JxBrowser.jnlp true
security: JAVAWS AppPolicy Permission requested for: http://10.0.1.20:8080/ULCBrowser-sample/lib2/tuxpack-0.2.jar
security: Istrusted: http://10.0.1.20:8080/ULCBrowser-sample/JxBrowser.jnlp true
java.lang.NoClassDefFoundError: com/jniwrapper/awtembeding/WidgetFactory
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at com.teamdev.jxbrowser1.impl.awt.i.a(Unknown Source)
at com.teamdev.jxbrowser1.impl.c.<init>(Unknown Source)
at com.teamdev.jxbrowser1.impl.g.a(Unknown Source)
at com.teamdev.jxbrowser1.impl.g.a(Unknown Source)
at com.teamdev.jxbrowser1.impl.ac.run(Unknown Source)
at com.teamdev.xpcom.impl.MozillaCallback.run(Unknown Source)
at org.mozilla.xpcom.internal.XPCOMJavaProxy.callXPCOMMethod(Native Method)
at org.mozilla.xpcom.internal.XPCOMJavaProxy.invoke(XPCOMJavaProxy.java:143)
at $Proxy10.run(Unknown Source)
at com.teamdev.xpcom.impl.AppShellMessageLoop.run(Unknown Source)
at com.teamdev.xpcom.impl.awt.linux.AwtLinuxPlatform.a(Unknown Source)
at com.teamdev.xpcom.impl.v.initialize(Unknown Source)
at com.teamdev.xpcom.d.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: com.jniwrapper.awtembeding.WidgetFactory
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:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
... 15 more
117.01.2010 16:49:09.8231,000SEVEREThread[AWT-EventQueue-2,6,javawsApplicationThreadGroup]com.ulcjava.base.client.UISessiondispatchRequestgot exception while processing[java.lang.IllegalStateException: This object has already been disposed
at com.teamdev.jxbrowser1.impl.g.b(Unknown Source)
at com.teamdev.jxbrowser1.impl.g.resetBadCertificateHandler(Unknown Source)
at com.teamdev.jxbrowser.mozilla.MozillaHttpSecurity.<init>(Unknown Source)
at com.teamdev.jxbrowser.mozilla.MozillaBrowser.<init>(Unknown Source)
at com.teamdev.jxbrowser.mozilla.MozillaBrowserFactory.create(Unknown Source)
at com.teamdev.jxbrowser.BrowserFactory.createBrowser(Unknown Source)
at com.ulcjava.extensions.browser.extension.UIBrowser.createBasicObject(UIBrowser.java:96)
at com.ulcjava.base.client.UIProxy.createBasicObject(UIProxy.java:773)
at com.ulcjava.base.client.UIProxy.init(UIProxy.java:838)
at com.ulcjava.base.client.UISession.newInstance(UISession.java:580)
at com.ulcjava.base.client.UISession.find(UISession.java:196)
at com.ulcjava.base.client.UISession.getManaged(UISession.java:244)
at com.ulcjava.base.client.UIProxy.replaceRefsByProxies(UIProxy.java:1192)
at com.ulcjava.base.client.UIProxy.replaceRefsByProxies(UIProxy.java:1166)
at com.ulcjava.base.client.UIProxy.handleGenericRequest(UIProxy.java:1156)
at com.ulcjava.base.client.UIProxy.setInitialState(UIProxy.java:1150)
at com.ulcjava.base.client.UIProxy.restoreState(UIProxy.java:266)
at com.ulcjava.base.client.UIProxy.init(UIProxy.java:840)
at com.ulcjava.base.client.UISession.newInstance(UISession.java:580)
at com.ulcjava.base.client.UISession.find(UISession.java:196)
at com.ulcjava.base.client.UISession.getManaged(UISession.java:244)
at com.ulcjava.base.client.UIProxy.replaceRefsByProxies(UIProxy.java:1192)
at com.ulcjava.base.client.UIProxy.replaceRefsByProxies(UIProxy.java:1166)
at com.ulcjava.base.client.UIProxy.handleGenericRequest(UIProxy.java:1156)
at com.ulcjava.base.client.UIProxy.setInitialState(UIProxy.java:1150)
at com.ulcjava.base.client.UIProxy.restoreState(UIProxy.java:266)
at com.ulcjava.base.client.UIProxy.init(UIProxy.java:840)
at com.ulcjava.base.client.UISession.newInstance(UISession.java:580)
at com.ulcjava.base.client.UISession.find(UISession.java:196)
at com.ulcjava.base.client.UISession.getManaged(UISession.java:244)
at com.ulcjava.base.client.UIProxy.replaceRefsByProxies(UIProxy.java:1192)
at com.ulcjava.base.client.UIProxy.replaceRefsByProxies(UIProxy.java:1166)
at com.ulcjava.base.client.UIProxy.handleGenericRequest(UIProxy.java:1156)
at com.ulcjava.base.client.UIProxy.setInitialState(UIProxy.java:1150)
at com.ulcjava.base.client.UIProxy.restoreState(UIProxy.java:266)
at com.ulcjava.base.client.UIProxy.init(UIProxy.java:840)
at com.ulcjava.base.client.UISession.newInstance(UISession.java:580)
at com.ulcjava.base.client.UISession.handleRequest(UISession.java:600)
at com.ulcjava.base.client.UISession.dispatchRequest(UISession.java:664)
at com.ulcjava.base.client.UISession.access$2700(UISession.java:46)
at com.ulcjava.base.client.UISession$CommunicationController$3$1.run(UISession.java:1135)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at com.ulcjava.base.client.FilteringEventQueue.dispatchEvent(FilteringEventQueue.java:148)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
]
The JNLP-Files look like this:
<jnlp spec="1.5+" codebase="$$codebase" href="$$name">
<information>
<title>ULCBrowser</title>
<vendor>Canoo</vendor>
<homepage href="http://www.canoo.com"/>
<description>ULCBrowser Demo Application</description>
</information>
<security>
<all-permissions />
</security>
<resources>
<jar href="lib2/ULCBrowser-client.jar" main="true" />
<jar href="lib2/ULCBrowser-shared.jar"/>
<jar href="lib2/ulc-all5-client.jar"/>
<jar href="lib2/log4j-1.2.15.jar" />
<extension name="jxbrowser" href="JxBrowser.jnlp"/>
</resources>
<resources os="Mac OS X">
<j2se version="1.5+" href="http://java.sun.com/products/autodl/j2se" initial-heap-size="64m" max-heap-size="256m" java-vm-args="-d32" />
</resources>
<resources os="Windows">
<j2se version="1.5+" initial-heap-size="64m" max-heap-size="256m"/>
</resources>
<resources os="Linux">
<j2se version="1.5+" initial-heap-size="64m" max-heap-size="256m"/>
</resources>
<application-desc main-class="com.ulcjava.extensions.browser.JNLPBrowserLauncher">
<argument>url-string=$$codebase/ulc</argument>
</application-desc>
</jnlp>