Description of problem: The zotero openoffice integration plugin does not work with the openjdk java. It reportedly works with sun (oracle) java. Version-Release number of selected component (if applicable): java-1.6.0-openjdk-plugin-1.6.0.0-37.b17.fc13.x86_64 How reproducible: Always Steps to Reproduce: 1. Install the zotero openoffice integration plugin (http://www.zotero.org/support/word_processor_plugin_installation#openoffice_neooffice) 2. Restart Firefox and openoffice (both need to be running) 3. In openoffice, click on a zotero toolbar button (say insert citation) Actual results: Firefox shows an error message: Firefox could not load the component required to communicate with your word processor. Please ensure that the appropriate Firefox extension is installed and try again. Expected results: A zotero window should open allowing to insert citations Additional info: The following relevant error messages are shown In zotero debug log: java.lang.reflect.InvocationTargetException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:532) at sun.applet.PluginAppletSecurityContext$6.run(PluginAppletSecurityContext.java:1050) at java.security.AccessController.doPrivileged(Native Method) at sun.applet.PluginAppletSecurityContext.handleMessage(PluginAppletSecurityContext.java:1047) at sun.applet.AppletSecurityContextManager.handleMessage(AppletSecurityContextManager.java:69) at sun.applet.PluginStreamHandler.handleMessage(PluginStreamHandler.java:298) at sun.applet.PluginMessageHandlerWorker.run(PluginMessageHandlerWorker.java:72) Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission createClassLoader) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:342) at java.security.AccessController.checkPermission(AccessController.java:553) at java.lang.SecurityManager.checkPermission(SecurityManager.java:549) at net.sourceforge.jnlp.runtime.JNLPSecurityManager.checkPermission(JNLPSecurityManager.java:282) at java.lang.SecurityManager.checkCreateClassLoader(SecurityManager.java:611) at java.lang.ClassLoader.checkCreateClassLoader(ClassLoader.java:194) at java.lang.ClassLoader.<init>(ClassLoader.java:242) at java.security.SecureClassLoader.<init>(SecureClassLoader.java:94) at java.net.URLClassLoader.<init>(URLClassLoader.java:130) ... 10 more Error on Java side: LiveConnectPermissionNeeded access denied (java.lang.RuntimePermission createClassLoader) In firefox using ICEDTEAPLUGIN_DEBUG=1: GCJ PLUGIN: thread 0x7f08a49da720: PIPE: plugin read: context 0 reference 356 Error LiveConnectPermissionNeeded access denied (java.lang.RuntimePermission createClassLoader) GCJ PLUGIN: thread 0x7f08a49da720: Trying to lock 0x7f08770a6a00... GCJ PLUGIN: thread 0x7f08a49da720: Message context 0 reference 356 Error LiveConnectPermissionNeeded access denied (java.lang.RuntimePermission createClassLoader) received on bus. Notifying subscribers. GCJ PLUGIN: thread 0x7f08a49da720: Notifying subscriber 0x7f0877e03cf0 of context 0 reference 356 Error LiveConnectPermissionNeeded access denied (java.lang.RuntimePermission createClassLoader) GCJ PLUGIN: thread 0x7f08a49da720: PluginRequestProcessor processing context 0 reference 356 Error LiveConnectPermissionNeeded access denied (java.lang.RuntimePermission createClassLoader) GCJ PLUGIN: thread 0x7f08a49da720: PluginRequestProcessor::newMessageOnBus: { context, 0, reference, 356, Error, LiveConnectPermissionNeeded, access, denied, (java.lang.RuntimePermission, createClassLoader) } GCJ PLUGIN: thread 0x7f08a49da720: Notifying subscriber 0x7fff8cb8c960 of context 0 reference 356 Error LiveConnectPermissionNeeded access denied (java.lang.RuntimePermission createClassLoader) GCJ PLUGIN: thread 0x7f08a49da720: JavaRequest::newMessageOnBus: { context, 0, reference, 356, Error, LiveConnectPermissionNeeded, access, denied, (java.lang.RuntimePermission, createClassLoader) } Error on Java side: LiveConnectPermissionNeeded access denied (java.lang.RuntimePermission createClassLoader) This is a long known issue i suppose, but could not find any bug entry. https://bugzilla.redhat.com/show_bug.cgi?id=484387#c18 has some info which may be related, but i dont understand it Thanks
Running the code: new java.net.URLClassLoader(java.lang.reflect.Array.newInstance(java.lang.Class.forName("java.net.URL"), 0)); from Firefox chrome:// (privileged) code is sufficient to generate this exception in the IcedTea NPRuntime plug-in. This same code does not generate an exception in the old IcedTea LiveConnect/OJI plug-in, nor does it generate an exception in the Sun NPRuntime Java plug-in. As the developer in charge of Zotero/OpenOffice.org integration, let me know if there's anything I can do to help further track down and fix this issue. There are dozens of posts our forums from users upgrading to new distributions that include the IcedTea NPRuntime plug-in to suddenly find that Zotero doesn't work anymore.
I've now learned from Mozilla bug 620773 (https://bugzilla.mozilla.org/show_bug.cgi?id=620773) that the Sun Java2 plug-in specifically recognizes chrome:// URIs and grants them enhanced privileges. I'm happy to try to patch the IcedTea NPPlugin to do the same. Can someone more knowledgeable in these matters comment on whether there are tricks to this, and whether it could potentially produce a security issue?
Tested with the new IcedTea-web java plugin included in Fedora 15. It now works well with LibreOffice.
This message is a reminder that Fedora 13 is nearing its end of life. Approximately 30 (thirty) days from now Fedora will stop maintaining and issuing updates for Fedora 13. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as WONTFIX if it remains open with a Fedora 'version' of '13'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version prior to Fedora 13's end of life. Bug Reporter: Thank you for reporting this issue and we are sorry that we may not be able to fix it before Fedora 13 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora please change the 'version' of this bug to the applicable version. If you are unable to change the version, please add a comment here and someone will do it for you. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. The process we are following is described here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping
zotero libreoffice plugin works great with F15