UnsupportedClassVersionError while trying set up RQM live reporting in RRDI
![](http://jazz.net/_images/myphoto/bffb49027ddf23eb645555fdeb453e6b.jpg)
Hi all,
While trying to setup RQM Live reporting on our RRDI 2.0.1 server, I have run into the following error message while testing the setup:
17:23:56|23432 inst.c(86): /opt/IBM/RRDI-2.0.1.0/etl/odbc/lib/libodbcinst.so
17:23:56|23432 inst.c(86): /opt/IBM/RRDI-2.0.1.0/etl/jre5/bin/libodbcinst.so
17:23:56|23432 inst.c(86): /opt/ibm/db2/V9.7/lib32/libodbcinst.so
17:23:56|23432 inst.c(102): /opt/unixODBC/lib/libodbcinst.so
Exception in thread "main" java.lang.UnsupportedClassVersionError: (com/ibm/rational/drivers/jdbc/xml/util/RDSQueryParser) bad major version at offset=6
at java.lang.ClassLoader.defineClassImpl(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:267)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:151)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:602)
at java.net.URLClassLoader.access$400(URLClassLoader.java:126)
at java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:1057)
at java.security.AccessController.doPrivileged(AccessController.java:274)
at java.net.URLClassLoader.findClass(URLClassLoader.java:494)
at java.lang.ClassLoader.loadClass(ClassLoader.java:650)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:616)
[ISQL]ERROR: Could not SQLConnect
at Step 10 of Configuring the ODBC driver for Linux and AIX systems.
I have tried this lots of times over the last few days with many different settings for my PATH and/or LD_LIBRARY_PATH environment variables to no avail.
Clearly the wrong version of java is being used with the jar file but why? and how do I configure it to use the correct one?
Many Thanks In Advance,
Robin
While trying to setup RQM Live reporting on our RRDI 2.0.1 server, I have run into the following error message while testing the setup:
17:23:56|23432 inst.c(86): /opt/IBM/RRDI-2.0.1.0/etl/odbc/lib/libodbcinst.so
17:23:56|23432 inst.c(86): /opt/IBM/RRDI-2.0.1.0/etl/jre5/bin/libodbcinst.so
17:23:56|23432 inst.c(86): /opt/ibm/db2/V9.7/lib32/libodbcinst.so
17:23:56|23432 inst.c(102): /opt/unixODBC/lib/libodbcinst.so
Exception in thread "main" java.lang.UnsupportedClassVersionError: (com/ibm/rational/drivers/jdbc/xml/util/RDSQueryParser) bad major version at offset=6
at java.lang.ClassLoader.defineClassImpl(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:267)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:151)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:602)
at java.net.URLClassLoader.access$400(URLClassLoader.java:126)
at java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:1057)
at java.security.AccessController.doPrivileged(AccessController.java:274)
at java.net.URLClassLoader.findClass(URLClassLoader.java:494)
at java.lang.ClassLoader.loadClass(ClassLoader.java:650)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:616)
[ISQL]ERROR: Could not SQLConnect
at Step 10 of Configuring the ODBC driver for Linux and AIX systems.
I have tried this lots of times over the last few days with many different settings for my PATH and/or LD_LIBRARY_PATH environment variables to no avail.
Clearly the wrong version of java is being used with the jar file but why? and how do I configure it to use the correct one?
Many Thanks In Advance,
Robin
One answer
![](http://jazz.net/_images/myphoto/bffb49027ddf23eb645555fdeb453e6b.jpg)
Hello Robin,
I recently found that the file libodbcinst.so could be missing or miss-linked, this occured to us when we had a system that contain the 32 and 64 bit version of the linuxODBC code. and after removing the 64bit version of the linuxODBC, the tool could no longer find /opt/unixODBC/lib/libodbcinst.so.
Or the second option for this problem is that the libodbcinst.so, is at the wrong bit level. If you execute a "file" against the library for the libodbcinst.so.
WARNING: it is possible that libodbcinst.so is a symbolic link, use the file command against the targeted link if it is, in the example below libodbcinst.so.1.0.0 if the file I test against
[root@oraeuro1 lib]# ls -lsa libodbcinst.*
0 lrwxrwxrwx 1 root root 29 May 17 10:35 libodbcinst.so -> /usr/lib/libodbcinst.so.1.0.0
0 lrwxrwxrwx 1 root root 20 May 17 10:11 libodbcinst.so.1 -> libodbcinst.so.1.0.0
80 -rwxr-xr-x 1 root root 74724 Oct 18 2011 libodbcinst.so.1.0.0
Example:
[root@oraeuro1 lib]# file libodbcinst.so.1.0.0
libodbcinst.so.1.0.0: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), stripped
[root@oraeuro1 lib]#
Make sure the file is 64 bit, if it is remove and re-install you linuxODBC,
Hope this heps
I recently found that the file libodbcinst.so could be missing or miss-linked, this occured to us when we had a system that contain the 32 and 64 bit version of the linuxODBC code. and after removing the 64bit version of the linuxODBC, the tool could no longer find /opt/unixODBC/lib/libodbcinst.so.
Or the second option for this problem is that the libodbcinst.so, is at the wrong bit level. If you execute a "file" against the library for the libodbcinst.so.
WARNING: it is possible that libodbcinst.so is a symbolic link, use the file command against the targeted link if it is, in the example below libodbcinst.so.1.0.0 if the file I test against
[root@oraeuro1 lib]# ls -lsa libodbcinst.*
0 lrwxrwxrwx 1 root root 29 May 17 10:35 libodbcinst.so -> /usr/lib/libodbcinst.so.1.0.0
0 lrwxrwxrwx 1 root root 20 May 17 10:11 libodbcinst.so.1 -> libodbcinst.so.1.0.0
80 -rwxr-xr-x 1 root root 74724 Oct 18 2011 libodbcinst.so.1.0.0
Example:
[root@oraeuro1 lib]# file libodbcinst.so.1.0.0
libodbcinst.so.1.0.0: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), stripped
[root@oraeuro1 lib]#
Make sure the file is 64 bit, if it is remove and re-install you linuxODBC,
Hope this heps