CHARON

(tunneling http thorugh IIOP/SECIOP)

A Web Browser opens http connection to a little server (Charon Client) running on the same host as the browser. The server acts as a client of a WebFlow module (Charon) that runs the same remote host as a Web Server.

The Charon client opens a server socket and listen to requests from the local Web Browser. It parses an incoming request and forwards it to Charon (remote object invocation). Charon establishes URL connection to the Web Server on behalf of the browser, accepts its response, and forwards the respose back to the Charon client through IIOP/SECIOP. The client pipes the response to the socket from the browser.

installation

The are two installation files: CharonClient.zip and Charon.tar.

Charon Client: unzip the file. The client consist just of two java files, CharonClient.java and MyCharon.java. There is also a directory generated that contains all classes generated by jidl compiler needed by the client.

Before compilation, create a directory, say, C:\CharonClasses. Set your classpath to include this directory, and OB.jar of ORBacus. Also, edit CharonClient.java and update value of IorUrl.

Then compile using command javac -d C:\CharonClasses *.java. The order of compilation is as follows: generated/octet_sequence*.java, generated/*.java, (maybe all files starting with _Charon and Charon must be compiled after the BeanContext and WebFlow files), finally MyCharon.java, and CharonClient.java

To run the Charon client, type java WebFlow.Charon.Client url, where url is the url of the Web Server to which Charon will connect. But wait untill the server side is up and running.

Charon: untar the file to a directory within BeanContext_2.2.2 (say, BeanContext_2.2.2/Charon. You will find Charon.idl, CharonServerImpl.java, Makefile and master.conf (as well as directory generated). To compile use the Makefile (edit it and set DIR variable first!). Update master.conf and run the server: java WebFlow.Server master.conf. As soon as the WebFlow server is running, start the Charon Client on the client machine.

testing

You need a webpage with links to "localhost:8085". An example of such a page is this test page. Since it is on www.npac.syr.edu, start the Charon client with url parameter set to http://www.npac.syr.edu:80. Click on links.

Enjoy! Tom


At NPAC, the Charon server is installed in ~webflow/WEBFLOW/BeanContext_2.2.2/Charon.