README file for the CORBA UNIX version of distributed IC Manager Prepared by Ping-Wen Chen, Feb 10, 2000 It can be found in /afs/cs.pitt.edu/projects/ams/html/MICE 1. Source code: /afs/cs.pitt.edu/projects/ams/v2.0/MICE You need CORBA libraries and C++ compiler "CC" to compile the source code. The commands to run makefiles: "make -f Makefile.corba" generates the CORBA client and CORBA server. "make -f Makefile.icm" generates the server for ic_manager. These CORBA libraries are the version for SUN Solaris operation system. The C++ compiler "CC" is developed by SUN. It can be found at /afs/cs.pitt.edu/system/sun4x_55/usr/local/opt/SUNWspro_v4_n2/SC4.0/bin/CC. 2. WWW directory: /afs/cs.pitt.edu/projects/ams/html/MICE 3. Home Page: http://amis.cs.pitt.edu/MICE/ Please make sure that the WWW server is up and running in machine "amis". ----------------------------------------------------------------------------- Deploy your application with corba in the Web: 1. Create an html directory. 2. Copy icm, account_client, account_server, *.in files to this directory. 3. Copy index.html and other html files to this directory. 4. If you use TAOML to design your Web pages, create a TAOML directory under the html directory. Copy all *.taoml and *.tpl to TAOML directory. ----------------------------------------------------------------------------- System Administrator: 1. Start the Smart Agent by command, if it is not working. Use command "ps -aux | grep osagent" to check. "osagent &" 2. Kill processes "icm" and "account_server" of the MICE, if they exist. (Use command "ps -aux | grep icm" and "ps -aux | grep account_server" to check whether they exist or not.) Please use the following command to kill a process: kill -9 process_id 3. Start the IC Manager by "nohup icm key1 key2 &" *Assign integers to key1 and key2, respectively. They are the keys of the two IPC message queues. Be sure not to conflict with another application's key1 and key2. *nohup is to keep the process working when you logout from your computer. *For example, assign key1=2468, key2=1357. *see the full example below. 4. Start the object server by "account_server object_name key1 &" *Assign a name to object_name. key1 should be the same as the above. *For example, assign key1=2468, object_name=mice, *see the full example below. 5. Customize the cgi script: corba.cgi. In the cgi script, you have to invoke "account_client object_name key2" *where object_name and key2 are the same as the above. *For example, given key2=1357, object_name=mice, corba-mice.cgi (customized corba.cgi) will invoke the command: "account_client mice 1357". *see the full example below. 6. Re-authenticate the two processes, icm and account_server, every 12 hours by the following command, if this command is not working. (Use command "ps -aux | grep reauth" to check whether it exists or not.) reauth 43200 your_username This will reauthenticate your processes every 12 hours (=43200 seconds). When you call reauth, you will be prompted for your password, and then reauth will run in the background. 7. Make sure that there is a copy of IC_Manager located in directory IC_Proj, which is under the WWW directory. MICE will copy this IC_Manager to the user's project directory. For exmaple, the current WWW directory is /afs/cs.pitt.edu/projects/ams/html/MICE. There should be a copy of IC_Manager in /afs/cs.pitt.edu/projects/ams/html/MICE/IC_Proj. -------------------------------------------------------------------------------- Example: For MICE, you can assign key1=2468, key2=1357, object_name=mice: (1) Run these two commands: nohup icm 2468 1357 & account_server mice 2468 & (2) Script file "corba-mice.cgi" (customized corba.cgi) invokes the command: "account_client mice 1357" *Again, be sure not to conflict with another application's key1 and key2.