Erlang and CORBA

Niclas Eklund nick@REDACTED
Fri Mar 3 16:19:41 CET 2006


#1 Currently it is not possible to run a pure client. If you intend to run
multiple instances you can use iiop_port == 0 (then the OS will supply a
vacant port).

#2 I guess that you have not registered the interface in the IFR. When you
compile your IDL-specification, a module named oe_<FilName>.erl, which
exports a function called oe_register:

Orber must be started before registration.

 corba:orb_init([{domain, "testORB"}, {orber_debug_level, 10}]).
 orber:install([node()], [{ifr_storage_type, ram_copies}]).

Note, you can use a minimal version of the IFR by adding {flags,16#80}
when invoking corba:orb_init/1. You should also add the compile option 
{light_ifr, true} when compiling your IDL-specification (see the IC
documentation). For more information about configuring Orber see:

Best regards,


On Fri, 3 Mar 2006, Stelianos G. Sfakianakis wrote:
> Hi!
> I 've started to investigate the use of Erlang/Yaws for some work of
> mine and I am currently puzzled about the corba *client* support. To
> be more specific I have a CORBA server written using TAO and I want to
> communicate with it from Erlang. Questions:
> 1. It seems that I have to start orber and according to the docs I did this:
> mnesia:start().
> corba:orb_init([{domain, "testORB"}, {orber_debug_level, 10}]).
> orber:install([node()], [{ifr_storage_type, ram_copies}]).
> orber:start().
> But by doing so a new listening TCP port (4001) is opened. Since I
> want to just use the client side of corba this seems unnecessary. Can
> I use corba without opening a (server) port?
> 2. I used the corba:string_to_object/1 function and got an object
> reference from a corbaloc string. Then I called a simple method and
> saw that the server responded. The problem is that when the erlang
> tries to un marshall the response throws an error like this
> [1085] cdr_decode:ifrid_to_name("IDL:Test/TestSt:1.0"). IFR Id not found: []
> Any ideas about what is wrong? Should I do anything to populate the
> IFR with the my (user defined) corba types?
> Thanks!
> Stelios

More information about the erlang-questions mailing list