Userservice plugin not working in 3.9.3 (Unsupported major.minor version 51.0)

Hi,

I have been using userservice plugin on debian openfire install for years and recently after update to 3.9.3 it stopped working.

Updated the plugin to latest version(1.4.4) and still no success.

It is not visible in installed plugins page, it is visible on available plugins, but [+] for install is not there.

Plugin files exist in /usr/share/openfire/plugins/ and if i delete it manually and disable plugin from Server Properties page, i can install it, but still it does not show in installed plugins and settings are not available.

I’ve tried to install plugin manually from Ignite Realtime: Openfire Plugins , still no luck. By the way Date column there shows Feb 5, 2016. (It is currently 13.Oct.2014)

Here is what error log says:

2014.10.03 12:09:53 org.jivesoftware.openfire.container.PluginManager - Error loading plugin: /usr/share/openfire/plugins/userservice

java.lang.UnsupportedClassVersionError: org/jivesoftware/openfire/plugin/UserServicePlugin : Unsupported major.minor version 51.0

at java.lang.ClassLoader.defineClass1(Native Method)

at java.lang.ClassLoader.defineClass(ClassLoader.java:643)

at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)

at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)

at java.net.URLClassLoader.access$000(URLClassLoader.java:73)

at java.net.URLClassLoader$1.run(URLClassLoader.java:212)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(URLClassLoader.java:205)

at java.lang.ClassLoader.loadClass(ClassLoader.java:323)

at java.lang.ClassLoader.loadClass(ClassLoader.java:268)

at org.jivesoftware.openfire.container.PluginManager.loadPlugin(PluginManager.java :420)

at org.jivesoftware.openfire.container.PluginManager.access$300(PluginManager.java :80)

at org.jivesoftware.openfire.container.PluginManager$PluginMonitor.run(PluginManag er.java:1074)

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)

at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351)

at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201 (ScheduledThreadPoolExecutor.java:165)

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Schedu ledThreadPoolExecutor.java:267)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

at java.lang.Thread.run(Thread.java:701)

Seems to be, that you use java 6. Try to run openfire with java 7.

Thank you Redeyes.

Will try.

Hi,

I think that I have a same problem… Do you resolved a issue ?

I tried with Java 7 but it still doesent works…

Hi,

I am also facing the same issue in Monitor service plugin

  1. Java update version 1.6 to 1.7

  2. Uninstall openfire3.9.3 completely aging install

  3. Then download plug-in from igniterealtime.org

  4. Manually upload plugin

  5. Restart open fire

it’s working fine

Hello everybody,

I’m facing the same problem with nearly every plugin, even though I’m running openfire with jre 7. The openfire server doesn’t seem to recognize the correct jre. I even tried setting the path in /etc/init.d/openfire to jre 7.

Has there been any progress regarding this problem since the last answer?

@Toby , please provide the exact JRE version being reported on the Openfire Admin Console webpage.

Same problem also.

In the Admin Console webpage:

Java Version:
1.6.0_65 Apple Inc. – Java HotSpot™ 64-Bit Server VM

But the latest JDK on my computer is :

java version “1.7.0_75”

Java™ SE Runtime Environment (build 1.7.0_75-b13)

Java HotSpot™ 64-Bit Server VM (build 24.75-b04, mixed mode)

So how to make change to let openfire to use jdk7 other than the jdk6

If you have jdk6 installed on your system, then remove it and try again. There is also a chance that Openfire is using its internal java and it is of 6 version, but that would have to be very old Openfire version. You can still try going to Openfire installation folder and delete jre folder inside.

1 Like

Actual issues behind this could be very basic nature of multiple software installations

Issue1:

whenever you install more than one JDK/JRE in your machine, the installation puts java.exe, javaw.exe inside c:\windows\system32

when you start a java dependant application, as per the PATH order c:\windows\system32 comes first… therefore it will take that java.exe and javaw.exe

Issue2:

The Openfire 3.9.3 itself has a jre inside the installation which is

C:\Program Files (x86)\Openfire\jre\bin


java version “1.7.0_55”

Java™ SE Runtime Environment (build 1.7.0_55-b13)

Java HotSpot™ Client VM (build 24.55-b03, mixed mode)


Solution 1:

make sure you install higher version of JAVA at last

Solution 2: (not recommended)

delete the java.exe and javaw.exe from c:\windows\system32 (warning: you must know what you are doing)

and introduce your own JAVA_HOME and PATH variable pointing the jdk\bin directory which ever you feel correct

Solution 3: (recommended)

Recompile you java code with JAVA lesser than the version of the JAVA which is used by OpenFire

Solution 4:

open command prompt and type “path” and press enter

Identify how many bin directory in which order is there, there could other installations like …oracle, android, borland… will make new java PATH location entry.

And make sure you provide you bin path in front of those paths (I mean your bin path should come first)

finally (Solution 3) is the perfect I think, you should compile your code lesser than 1.7.0_55