It's all about the answers!

Ask a question

UnsupportedClassVersionError while trying set up RQM live reporting in RRDI


Robin Parker (32633739) | asked Mar 04 '13, 12:32 p.m.
edited Mar 04 '13, 12:34 p.m.
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

One answer



permanent link
Philippe Chevalier (56114) | answered May 19 '13, 3:38 a.m.
JAZZ DEVELOPER
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


Comments
Philippe Chevalier commented May 19 '13, 3:40 a.m.
JAZZ DEVELOPER

CORRECTION:

Make sure the file is 64 bit, if it is remove and re-install you linuxODBC, 

SHOULD BE

Make sure the file is not 64 bit, if it is remove and re-install you linuxODBC, 

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.