Anders Hessellund Jensen wrote, On 12/6/2005 8:21 AM:
Hi all,
Currently, we need to compile idl files in at least two cases.
- The CORBA spec is based on idl.
- Interfaces for some test files is also defined in idl.
Currently everything is compiled with Suns idlj. This is not
satisfactory because of a couple of problems:
- Requires Sun JDK. This means that people using non-Sun JDK's can't
compile the idl files.
- No support for local interfaces. The ORB uses some interfaces that
are used internally only. These should be declared local in idl, so
that the resulting java interfaces do not extend Remote.
Support for local interfaces is very important. Without this, the
classes used in the internal implementation of the ORB throws a lot of
unneccessary exceptions, which complicates the code that uses the
generated classes.
Optimally, we would be able to take the idl files directly from OMG.
They have published a set of idl files, which can be downloaded here:
http://www.omg.org/cgi-bin/doc?formal/02-07-02 . These files generally
correspond to our own files in geronimo-spec-corba. Using the files
provided from OMG would be advantageous, since that would guarantee
the correctness and completeness of the IDL.
For the Trifork ORB we used the JacORB idl compiler. This compiler is
apparently able to compile the idl files from OMG with only very minor
modifications to these. The compiler is under the GPL.
Therefore, i propose we use the JacORB idl compiler instead of Suns
idlj. This would solve both aforementioned issues.
To use it, we would have to bundle it and get it uploaded to the maven
repos, and we would have to modify the idlj plugin to support using
this compiler. Neither should take a huge amount of work. I would be
happy to take care of the plugin modifications required.
Note that the compiler is only used in the build process. It will not
be bundled with the finished product or anything like that. We are not
going to have any GPL-code in the geronimo repository by using this
compiler.
Any comments on this issue? Should i move on to integrating the JacORB
compiler with the idlj plugin?
I don't think that JacORB is properly licensed. Does anyone know if
it's a problem using LGPL jars?
The ideal solution is to implement and use our own. I wonder if we
could use OpenORB. Lars?
Regards,
Alan