Erlang and Java through CORBA version combinations

Niclas Eklund <>
Thu Oct 18 13:22:31 CEST 2001



Hello!

To start with, my advice is that you use the latest version R8
(Orber-3.2.9) when testing. Please note that the snapshots didn't
include 3.2.9. There are also a few simple things you can do
to debug your system:

shell> erl -orber orber_debug_level 10 -orber interceptors "{native,[log_interceptor]}"

The 'orber_debug_level' you can use straight away but the interceptor must
be implemented. I'll send you the log_interceptor.erl in a separate
e-mail. If you want to log the traffic to file just edit it (see also
chapter 12 in the User's Guide and the 'interceptors' section in the
reference manual if you want more info).
To check if you installed the interceptor correctly just type (after
starting Orber) orber:info(). in the shell.

To be able to help you further it would really help if you could include
the minor-codes and completion-status of the system excepetion. This
information and if you do the above I'll most likely be able to tell what
goes wrong.


/Nick


On Thu, 18 Oct 2001, Erik Reitsma (ELN) wrote:
> Hi all!
> 
> I have been trying to talk to a Java server from an Erlang client
> through CORBA, and experienced some problems that I would like to share.
> I found that only certain versions of OTP and Sun's Java ORB work
> together. I have to talk to a server that uses JDK 1.3.0, and this did
> not work with OTP R7D (marshalling errors on the Erlang side). So I
> tried some other combinations, and here are the results:
> 
> Below "works" means: I could call the method on the server and got the
> result. The method has parameters that contain objects, and has an out
> parameter that contains an object among other things. I can send the IDL
> for those who would like to solve this...
> I print something on the server when the method is called, so I can see
> whether it is called or not.
> 
> The results:
> 
> JDK 1.2.1 on WinNT4:
> works with:
> OTP R7D, Linux
> OTP R8B, WinNT4
> OTP R7B, WinNT4
> 
> JDK 1.3.0 on WinNT4
> works with:
> OTP R7B, WinNT4
> does not work with:
> OTP R7D, Linux (method not called, marshalling exception)
> OTP R8B, WinNT4 (method not called, marshalling exception)
> 
> JDK 1.4.0, first beta (b65) on WinNT4
> works with:
> none
> does not work with:
> OTP R7D, Linux (method called, but exception)
> OTP R8B, WinNT4 (method called, but exception)
> OTP R7B, WinNT4 (not called, no_implement exception)
> 
> JDK 1.4.0, second beta (b77) on WinNT4
> works with:
> OTP R7D, Linux
> OTP R8B, WinNT4
> does not work with:
> OTP R7B, WinNT (not called, no_implement exception)
> 
> JDK 1.4.0, second beta (b77) on Linux
> works with:
> OTP R7D, Linux
> OTP R8B, WinNT4
> does not work with:
> OTP R7B, WinNT (not called, no_implement exception)
> 
> This means, since I have to work with JDK 1.3, that I should use OTP R7B.
> Any ideas about what causes this? Anything broken since R7B? I would like to use the newer OTP, but in this case, it seems that I have to use R7B...
> 
> *Erik.







More information about the erlang-questions mailing list