It's not a secret anymore!
The moose likes Distributed Java and the fly likes CORBA & Firewalls Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Java Interview Guide this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Java » Distributed Java
Bookmark "CORBA & Firewalls" Watch "CORBA & Firewalls" New topic

CORBA & Firewalls

Ahmed Matar

Joined: Mar 23, 2002
Posts: 6
I'm developing a large chat application (signed applet clients) in Java. I have developed most of the application already using Java and RMI. After careful thought, I am thinking of using CORBA instead of RMI. The main reasons for this are:
* Performance: My application is a quite complex with many features, and with many clients using it performance is a key issue. The benchmarks that I have seen comparing the performance of CORBA (different ORBs) and RMI clearly show that CORBA is many more times faster than RMI.
* The complexity of the CORBA architecture means much more flexibly in the way that clients and servers are implemented. For example, the POA policies (to create Servant Locators for example) are something that I'm highly interested in and believe will improve my application.
However there is one concern that I have with CORBA: That is that it doesn't support HTTP tunneling (right?). I know that some ORBs like Visibroker do, but I'm mainly interested in using the J2SE 1.4 CORBA support instead of other ORBs, because my client is an applet (with Java Plugin) which I want to load quickly and not download any extra jar files of ORBs and cost is another issue. I know that RMI supports tunneling. HTTP tunneling is very important to me so that clients can connect to a server from behind a firewall (note: both clients and servers implement callbacks), I'm wondering if there is any way of achieving this with J2SE CORBA (or with small jar files of other ORBs)? I have thought of "manually" doing the tunneling for clients that behind firewalls with java code and not use CORBA for these clients, but I anticipate this to be too complex (Agree??) since the whole idea of using middleware is not to be get involved in coding TCP socket connections.
What about RMI-IIOP? Will this solve the firewall issue? Ofcourse, this means that the client should be written in RMI and server in CORBA (Is that what it means?) (It is more important to me that the server be in CORBA than the Client). What about its performance?
Any ideas?
cata lin
Ranch Hand

Joined: May 11, 2000
Posts: 44
Hi Ahmed,
I read your post, and here are some ideas.
Since you are using CORBA, the server part
might be written in any language, including
C++ ;-), this will for sure improuve performance.
Since the client in an applet, it needs the .jar
which contains the CORBA stuff. Netscape comes
with VisiBroker classes(Netscape: Help\About Navigator) , but then there are problems with versions, other browsers ... so it's better for the jars to come on the net .
Hope it helps.
Jim Baiter
Ranch Hand

Joined: Jan 05, 2001
Posts: 532
This is an open source ORB that supports HTTP tunneling - I don't think there is any in the Java ORB.
I agree. Here's the link:
subject: CORBA & Firewalls
It's not a secret anymore!