#######################################################################
#		Alignment Server launch instructions                  #
#                      31/03/2010, version 4.0                        #
#######################################################################

Using the alignment server requires an SQL database server.
We see here, how to use mysql (http://dev.mysql.com/doc/refman).

PORTS USED BY THE ALIGNMENT SERVER
----------------------------------

The alignment server is a communicating system that communicates through
TCP sockets which are bound to ports on your machines. We provide here the
list of default ports and options to change them as well as the necessity
for the firewalls to open these ports:

    	default	  option  open?
HTTP	8089	  -H	  Y
Jade	8888	  -A
//	1099		  ? (RMI) 
	7778		  Y (MTP HTTP)
WSDL	7777	  -W
JXTA	6666	  -P
Oyster	1099	  -O	  Y (RMI/Kaon2)

mysql	3306	--dbmsport	No if on the same machine

Both Jade and Oyster/Kaon2 use rmi connection and the default 1099 port.
Moreover, concerning Oyster, this port must be open to the outside.

MYSQL FOR THE FIRST TIME
------------------------

$ sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &
$ /usr/local/mysql/bin/mysqladmin -u root password <mysqlpassword>
$ /usr/local/mysql/bin/mysqladmin -u root -h localhost password <mysqlpassword>
$ /usr/local/mysql/bin/mysql -u root -p<mysqlpassword>
sql> CREATE DATABASE AServDB;
sql> GRANT ALL PRIVILEGES ON AServDB.* TO adminAServ@localhost IDENTIFIED BY 'aaa345';
sql> quit

Of course, you are advised to use different user, password and database name. This can be achieved either:
- by changing values of DBMSBASE, DBMSUSER and DBMSPASS in AlignmentServer and recompiling;
- by passing parameters dbmsbase, dbmsuser and dbmspass to AlignmentServer.

Sample backup of the server content:
$ /usr/local/mysql/bin/mysqldump -u adminAServ -paaa345 AServDB > toto.sql

And restoring:
$ /usr/local/mysql/bin/mysql -u adminAServ -paaa345 AServDB
sql> source toto.sql;

LAUNCHING MYSQL AND LOADING SAMPLE DATABASE
-------------------------------------------

The next time it is sufficient that mysql is running... (with the database loaded)

$ sudo /usr/local/mysql/bin/mysqld_safe --user=mysql

LAUNCHING THE ALIGNMENT SERVER WITH OYSTER REGISTERY
----------------------------------------------------

The alignment API is already compiled with Oyster support. However, it is not ready to be launched. The instructions to do so are:

1) get the Oyster2 package from http://ontoware.org/projects/oyster2
2) copy the four libraries in lib/ (or at least in the classpath)
3) copy the O2serverfiles directory
4) copy the "new store" config file
5) edit the "new store" config file for it to use the correct environent
6) launch kaon2.jar

java -cp lib/kaon2.jar org.semanticweb.kaon2.server.ServerMain -registry -rmi -ontologies O2serverfiles

[use -registryport for using another port than 1099,
 then the "new store" configuration file must be edited]

7) launch the server

java -jar lib/alignsvc.jar -O -d4


RUNNING THE ALIGNMENT SERVER
----------------------------

$ java -jar lib/alignsvc.jar -H
$ java -jar lib/alignsvc.jar -Dwndict=../WordNet-3.0/dict -H

The alignment server is then available through HTTP with:

    	      http://localhost:8089/html/

(hint: use -d)


