The Artima Developer Community
Sponsored Link

Legacy Jini Forum
Make Room For JavaSpaces



This page contains an archived post to the Jini Forum made prior to February 25, 2002. If you wish to participate in discussions, please visit the new Artima Forums.


Using JavaSpacesand CORBA in a dual firewall architecture

Posted by Mike on March 21, 2000 at 1:09 PM

The following is an idea I forwarded to some of my coworkers. Let me know what you think
The environment has two firewalls. The first firewall separates the Internet and the DMZ.
The second firewall separates the DMZ and our internal network. Thanks

I had one thought about a possible architecture using JavaSpaces that won't require RMI-IIOP over a firewall. The architecture involves something of a collection of programs acting like a informational proxy. These collections of programs would exist in the DMZ.

When a user logs in to her/his personal page, one of these proxy like programs(probably a Servlet) calls a remote CORBA method residing within the Merck Internal network called GetPersonal() with arguments of the userid and password. The Servlet uses the information returned from the CORBA remote method and creates a JavaSpace (using just RMI) for that person. Another way would be for a Servlet to automatically populate all JavaSpaces using this Servlet when the Webserver starts up, so an existing user's personal preferences are already available in the JavaSpace. In this situation first the Servlet is using IIOP to go across the second firewall to get the information and then the Servlet uses RMI to communicate with the JavaSpaces which reside in the DMZ. Let me know if I missed a step.

When a new user logs on to our personal pages, only the JavaSpaces are updated. Another proxy-like program running within the DMZ continually fetches information from updated JavaSpaces and accordingly calls a remote CORBA method within the Merck Network called setPersonal with arguments of the userid, password, and other arguments which could imply updates/deletes/changes to the JavaSpaces. An example might be setPersonal userid,password,Poll,Vioxx,Array) where every time a CORBA method comes across with five arguments it matches on the third argument to see what type of add/delete/change has occurred and what type of information is included. I'm implying that there is an instruction set here and that the CORBA object will have to interpret the instruction set generated by the JavaSpace.


Sponsored Links

Copyright © 1996-2009 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use - Advertise with Us