Hello All,
I've been using Sergey Koposov's, IDL_SQL Java library, to connect IDL 7.1 to a MySQL database and when I tried setting it up on another Windows machine with IDL 8.0 we could not get it to work for a few days. We finally figured out what the problem was and I thought I would throw this out for your information. IDL_SQL uses the IDL Java Bridge and that can be configured with the idljavabrc file in the users home directory. We have Java 7 installed on the machine and we pointed IDL to use that JVM, instead of the JVM that is packaged with IDL, by setting the environmental variable IDLJAVAB_LIB_LOCATION.
After many frustrating hours of tweaking environmental variable and setup scripts we were still getting this error:
% Compiled module: GET_SQL_CATCH.
% GET_SQL: Exception thrown: java.lang.ExceptionInInitializerError
We were about to give up when a colleague found this in a file named idljavabrcorig in the IDL80\resource\bridges\import\java folder. It included this paragraph:
################################
# Java virtual machine locations
################################
#
# When running the IDL-Java bridge from the IDL Workbench, the
# Java Virtual Machine used by the workbench is also used for the
# bridge. Values set in this file or by the IDLJAVAB_LIB_LOCATION
# environment variable are ignored.
#
This means that from the Workbench, you can not point IDL to any other JVM, at least from Windows. It works from the IDL command line though. This bug(?) is the not documented any place else in the help files or PDFs. It is buried in this obscure file next to the default idljavabrc file! And, of course, the IDL_SQL library does not work with the prepackaged JVM that IDL 8.0 installs with. So we can not access our database from the IDL Workbench in IDL 8. Doesn't this sound like bug that EXELIS should fix, or at least document in the help pages?
Marty
PS. Info on the IDL_SQL library can be found here:
http://code.google.com/p/idl-sql/wiki/README