renaud.dussurget@[EMAIL PROTECTED]
wrote:
> Hi all
>
> I finally end here as I cannot find an issue to my problem.
> Let me explain...
>
> I have been using a Java connector object since a while on my machine
> to run an idl application, using the 6.3 version on a 32bits Linux
> Debian. Another remark is that the whole project is developed using
> the eclipse environment (which prepared us to the brand new IDL
> workbench!).
> We had some problems to configure it but finally we got it.
>
> As we received the latest version of IDL (i.e. 7.0) we wanted to give
> it a try with a java connector. I've been setting up the environment
> correctly (as I did with idl 6.3) - i.e. setting IDL_PATH, PATH,
> LD_LIBRARY_PATH and CLASSPATH environment variables, and also have
> defined the path to the corresponding javaidlb.jar files (depending on
> the versions). I have even tried it with the environement defining
> scripts (idl_setup.sh and bridge_setup.sh) which are basically doing
> the same.
>
> BUT nothing worked (it would have been definitely too easy!).
>
> So I came back to the basics and tried to set up the famous "hello
> world!" code, which is given as an example in IDL connectivity bridge
> help (in IDL/examples/docs/bridges i think).
>
> Using eclipse I have created a new project and packaged the
> hello_example.java. I have defined the corresponding javaidlb.jar in
> the build path, and defined the environement variables in the "Run as
> Java Project" interface.
>
> and it works perfectly for idl 6.3.
> but when I do EXACTLY the same for IDL 7.0 it just does not work at
> all (it fails while doing the instanciation of the new
> java_IDL_connect), and gives a weird error message, i.e. "Attempt to
> call undefined procedure/function: 'GMEM_UNMAP'".
>
> To try debugging it, I have used the -DIDL_LOAD_DEBUG Java VM argument
> and set the IDL_BRIDGE_DEBUG argument to 1.
>
> And it does not really give much more interesting informations....
> Here is the whole error message:
> "Java location : /usr/lib/jvm/java-1.5.0-sun-1.5.0.10/jre/lib/i386
> (set relative to java.home property)
> Successfully loaded libawt.so
> Successfully loaded libjawt.so
> Successfully loaded libjavaidlb.so
> [DEFAULT_PROCESS_NAME] Error: eBadXPPATH: Bad value for XPPATH (/usr/
> local/itt/idl70/resource/xprinter)
> [DEFAULT_PROCESS_NAME] % Error opening printer.
> [DEFAULT_PROCESS_NAME] % Attempt to call undefined procedure/function:
> 'GMEM_MAP'.
> [DEFAULT_PROCESS_NAME] % Execution halted at: $MAIN$
> [DEFAULT_PROCESS_NAME] % Attempt to call undefined procedure/function:
> 'GMEM_UNMAP'.
> [DEFAULT_PROCESS_NAME] % Execution halted at: $MAIN$
> [DEFAULT_PROCESS_NAME] Attempt to call undefined procedure/function:
> 'GMEM_UNMAP'.
> Exception in thread "main" com.idl.javaidl.JIDLException[iErr=-999
> sMsg=Attempt to call undefined procedure/function: 'GMEM_UNMAP'.]
> at com.idl.javaidl.JIDLPAL.nativeThrowJIDLException(Native Method)
> at com.idl.javaidl.JIDLPAL.throwSpecificException(JIDLPAL.java:1069)
> at com.idl.javaidl.JIDLPAL.throwJIDLException(JIDLPAL.java:1098)
> at com.idl.javaidl.JIDLPAL.createObject(JIDLPAL.java:378)
> at com.idl.javaidl.JIDLPAL.createObject(JIDLPAL.java:314)
> at com.idl.javaidl.JIDLObject.createObject(JIDLObject.java:193)
> at com.idl.javaidl.JIDLObject.createObject(JIDLObject.java:103)
> at src.hello_example.<init>(hello_example.java:46)
> at src.hello_example.main(hello_example.java:66)"
>
> another really disturbing thing I've found out pressing the wrong
> button in eclipse is that when I only set up the classpath to point
> towards idl7.0 javaidlb.jar, add this jar in the build path, and leave
> the other environement variables to point towards IDL6.3... it
> actually WORKS (???!!!!!!).
> The thing is that I don't know if I am really using idl7.0 instead of
> idl 6.3 (I guess that if the path is set up for IDL 6.3, it will run
> the idl 6.3 version of the idl_opserver.exe...).
>
> I did not find much informations about these errors. There are a
> couple of threads dealing with the GMEM_UNMAP error, but it is linked
> with IDL workbench and old IDL 6.3 DLMs definitions....
>
> So if anybody of you has a clue about my problem, please let me know!!
> Thanks a lot
> Renaud
Renaud,
The GMEM_XXX errors are because IDL cannot find the GMEM DLM. This
typically happens when you explicitly set the IDL_DLM_PATH variable but
do not include the bin\bin.xxx directory. So, check your DLM path
variable and make sure that it also points at your IDL bin directory.
This is a known issue and is now fixed in IDL 7.1
Cheers,
Abraham


|