Incompatibility with java-1.7.0-openjdk-1.7.0.25-2.3.10 from

Having trouble installing Oxygen? Got a bug to report? Post it all here.
tomj
Posts: 2
Joined: Tue Jul 27, 2004 9:18 pm

Incompatibility with java-1.7.0-openjdk-1.7.0.25-2.3.10 from

Post by tomj »

Hi,

I'm using Oxygen on a Fedora 17 x86_64 workstation. When using java-1.7.0-openjdk-1.7.0.19-2.3.9.6.fc17
everything works as expected. But with the update to java-1.7.0-openjdk-1.7.0.25-2.3.10.3.fc17 as provided by Fedora, oxygen doesn't start anymore:

Code: Select all


16:34:58,035 1 ERROR [ main ] ro.sync.ui.application.ApplicationLauncher - java.lang.reflect.InvocationTargetException
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:526)
at ro.sync.ui.application.ApplicationLauncher.h(Unknown Source)
at ro.sync.ui.application.ApplicationLauncher.launch(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at ro.sync.exml.Oxygen.main(Unknown Source)
Caused by: java.lang.NoSuchMethodError: sun.reflect.Reflection.getCallerClass(I)Ljava/lang/Class;
at com.jidesoft.plaf.UIDefaultsLookup.c(Unknown Source)
at com.jidesoft.plaf.UIDefaultsLookup.get(Unknown Source)
at com.jidesoft.swing.ContentContainer.updateUI(Unknown Source)
at javax.swing.JPanel.<init>(JPanel.java:86)
at javax.swing.JPanel.<init>(JPanel.java:109)
at javax.swing.JPanel.<init>(JPanel.java:117)
at com.jidesoft.swing.ContentContainer.<init>(Unknown Source)
at ro.sync.exml.c.f.<init>(Unknown Source)
at ro.sync.exml.MainFrame.uxm(Unknown Source)
at ro.sync.exml.MainFrame.createContentContainer(Unknown Source)
at com.jidesoft.action.DefaultDockableBarHolder.initFrame(Unknown Source)
at com.jidesoft.action.DefaultDockableBarHolder.<init>(Unknown Source)
at ro.sync.ui.application.sc.<init>(Unknown Source)
at ro.sync.ui.application.b.<init>(Unknown Source)
at ro.sync.exml.MainFrame.<init>(Unknown Source)
at ro.sync.exml.MainFrame.<init>(Unknown Source)
... 11 more
I tried this with Oxygen 15, but older versions are affected as well. When reverting the openjdk-update, everything works again.

My java-alternatives is set up correctly:

Code: Select all


# update-alternatives --display java
java - status is auto.
link currently points to /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
/usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java - priority 170025
slave keytool: /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/keytool
slave orbd: /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/orbd
slave pack200: /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/pack200
slave rmid: /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/rmid
slave rmiregistry: /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/rmiregistry
slave servertool: /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/servertool
slave tnameserv: /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/tnameserv
slave unpack200: /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/unpack200
slave jre_exports: /usr/lib/jvm-exports/jre-1.7.0-openjdk.x86_64
slave jre: /usr/lib/jvm/jre-1.7.0-openjdk.x86_64
slave java.1.gz: /usr/share/man/man1/java-java-1.7.0-openjdk.1.gz
slave keytool.1.gz: /usr/share/man/man1/keytool-java-1.7.0-openjdk.1.gz
slave orbd.1.gz: /usr/share/man/man1/orbd-java-1.7.0-openjdk.1.gz
slave pack200.1.gz: /usr/share/man/man1/pack200-java-1.7.0-openjdk.1.gz
slave rmid.1.gz: /usr/share/man/man1/rmid-java-1.7.0-openjdk.1.gz
slave rmiregistry.1.gz: /usr/share/man/man1/rmiregistry-java-1.7.0-openjdk.1.gz
slave servertool.1.gz: /usr/share/man/man1/servertool-java-1.7.0-openjdk.1.gz
slave tnameserv.1.gz: /usr/share/man/man1/tnameserv-java-1.7.0-openjdk.1.gz
slave unpack200.1.gz: /usr/share/man/man1/unpack200-java-1.7.0-openjdk.1.gz
Current `best' version is /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java.
I really really want to use the OpenJDK as provided by Fedora, as it is the only jdk which gets all the neccessary security updates automatically. I want to avoid having to package my own copy of a Oracle JDK at any cost. Using a java which does not get security updates is not an option.

As there seem to be similar problems on MacOS which are fixed on the Oxygen-side, I suspect that this problem is best fixed in Oxygen too. If you believe that this problem has to be fixed in the Fedora packages, please give me all the neccessary details that I can create a bugzilla entry there.

Kind regards,

Gerd
Radu
Posts: 9449
Joined: Fri Jul 09, 2004 5:18 pm

Re: Incompatibility with java-1.7.0-openjdk-1.7.0.25-2.3.10

Post by Radu »

Hi Gert,

Thanks for the report, we'll look into it.
We got feedback about the same problem from someone using Java 1.8 on Ubuntu a couple of weeks ago.
The issue in this case is that one of the libraries used by Oxygen (the Jide Docking library) used a method which was not API from the SUN implementation.
We plan to pack an updated version of the library which fixes this problem with Oxygen 15.1 in a couple of months and this will fix the issue.

In the meantime the Oxygen Linux kits should come with a bundled Java 1.7 VM:

http://www.oxygenxml.com/download_oxyge ... l?os=Linux

and you should use that default Java VM with Oxygen because it's stable and tested by us for a couple of weeks before each release.

The security updates for Java are all for Java used in the browser (as an applet) and you can have the latest Java used in the web browser but use the older bundled Java with Oxygen.

Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
Post Reply