1. GeneMOb_desk desktop application
    1. Installing GeneMOb_desk
    2. Starting GeneMOb 0.9 Client as a desktop application
  2. GeneMOb_net distributed application
    1. Starting GeneMOb 0.9 Client with Java Web Start
    2. GeneMOb 0.9 Server
      1. System Requirements
      2. Installation
      3. MySQL Database
      4. Running and maintenance
      5. Tips and troubleshooting

I. GeneMOb_desk desktop application
1. Installing GeneMOb_desk. Download the file genemob_desk_09_03.tar.gz. Extract the folder genemob_desk_09_03. This folder contains the genemob_desktop.jar file, used to start the application, data_download.html and README files, and the lib folder. The lib folder contains genemob_client.jar file, which is shared with GeneMOb_net, and derby.jar, which contains the database software.

2. Starting GeneMOb 0.9 Client as a desktop application. Open the terminal and cd to genemob_desk_09_03 directory. Start the application by typing java -jar genemob_desktop.jar. To load NCBI data, open the data_download.html file in a web browser and follow the instructions therein. Choose the Load NCBI Data into db... item from the Server menu in GeneMOb 0.9 Client, and select the directory containing the downloaded files.

II. GeneMOb_net distributed application
1. Starting GeneMOb 0.9 Client with Java Web Start. In GeneMOb_net, GeneMOb Client is deployed as a Java Web Start application. Initially, it has to be started in a Web browser, by clicking on a link pointing to a JNLP (Java Network Launching Protocol) file on a properly configured Web server. This causes the browser to launch Java Web Start, which is a part of a standard Java installation. The JNLP file contains the information necessary to download the application packaged in a JAR file, and to run it. Once downloaded, GeneMOb Client remains in the Java Web Start cache until it is removed by the user. It can be subsequently started by double-clicking a desktop icon, or from the Java Web Start Cache Viewer, even in the absence of a network connection. However, Java Web Start will try to connect back to the Web server each time GeneMOb Client is launched to check whether an updated version of the application is available.

GeneMOb Client has been tested on Macintosh OS X, Windows XP, and Red Hat/Fedora Linux. It requires Java version 1.5. To launch GeneMOb Client from the GeneMOb web site on your machine, see our download page.

2. GeneMOb 0.9 Server
a. System Requirements. As a Java application, GeneMOb Server should run on a variety of platforms. This manual describes installation on Fedora Core, the free operating system and platform, based on Linux. The following list shows the software which has to be installed on the machine to run the GeneMOb Server, as well as the URLs for documentation and free downloads:

Fedora Core Linux
http://fedora.redhat.com/ When installing, make sure to install Apache Web Server and MySQL software, included in the distribution.
Java Runtime Environment
http://java.sun.com/ Version 1.5 or higher. (In 1.6, if javaws can't find libstdc++.so.5 library, type in terminal:
yum search compat-libstdc
yum install compat-libstdc++-33
)
Apache Web Server
http://httpd.apache.org/ Included in Fedora distribution.
MySQL database
http://mysql.org/ Included in Fedora distribution.
ClustalW
ftp://ftp.ebi.ac.uk/pub/software/unix/clustalw/ If cannot execute downloaded binary file, recompile with
make -f makefile.linux

b. Installation. To use GeneMOb 0.9 Server, download and decompress the genemob_0.9.gz archive. Copy the resulting genemob_0.9 directory into the root directory of the Apache Web server (/var/www/html; you may need root access to perform this and some other steps). The genemob_0.9 directory contains the following components:

genemob folder
This folder contains all the Java classes comprising the GeneMOb 0.9 Server.
img folder
This folder contains images used by the GeneMOb 0.9 Client.
data_download.html file
Open this file with a Web browser to download NCBI data.
genemob_client.jar archive
This file contains the GeneMOb 0.9 Client.
genemob.jnlp file (ed)
This file is downloaded by the user to run the GeneMOb 0.9 Client. Edit this file: in the line
codebase="http://192.168.0.4/genemob_0.9"
replace 192.168.0.4 with the address of your Web server.
genemob.policy file (ed)
Edit this file if your Web server root directory is not /var/www/html.
genemob.properties file (ed)
Edit this file following instructions in the comment lines starting with #.
make_genemob_tables file
A script to create tables for user data in the MySQL database.
mysql-connector-java-5.0.4-bin.jar archive
Java classes required for connecting to MySQL.
rungenemob file (ed)
This is the command starting the GeneMOb 0.9 Server. Edit appropriately.

Using a word processor or a text editor, edit the files marked with (ed) in the above list. Make sure Apache Web server (httpd service is running. Configure it to serve jnlp files by adding the following line to the file /etc/mime.types:

application/x-java-jnlp-file	JNLP

Configure the MySQL database as described in the next section.

c. MySQL Database. Make sure MySQL database server (mysqld service) is running.

1. If this is new installation, create root password and an account for GeneMOb:

$ mysql -u root
mysql> set password = password ('rootpass');
mysql> grant all privileges on *.* to 'genemobuser'@'localhost'
    -> identified by 'userpass' with grant option;
mysql> exit
Bye

2. Log into your MySQL client and create genemob tables:

$ mysql -u genemobuser -p
mysql> create database genemobdb;
mysql> use genemobdb;
mysql> source /var/www/html/genemob_0.9_02/make_genemob_tables
mysql> show tables;
+------------------------+
| Tables_in_genemobdb    |
+------------------------+
| e_gene                 | 
| float_attribute        | 
| float_attribute_value  | 
| gene                   | 
| gene_collection        | 
| gene_relation          | 
| h_gene                 | 
| protein                | 
| relation_location      | 
| rna                    | 
| string_attribute       | 
| string_attribute_value | 
+------------------------+

MySQL database supporting GeneMOb 0.9 contains 2 sets of tables. Those listed above are for storage of user-generated collections and other annotations. All the data residing in these tables is edited from the GeneMOb 0.9 Client user interface.

3. The second set of tables is used for storage of data downloaded from NCBI. These tables are shown as yellow boxes in the diagram on the right. The white notes attached to each table show the name of the file used to obtain the data for that table, and the file's location in NCBI ftp directory. The data files can be downloaded from NCBI by opening the data_download.html file in a Web browser and following instructions therein. They must be placed in a directory specified in the genemob.properties file (see previous section). The database update process - which includes re-generation of the tables, parsing of the files, and loading the tables - is then performed by selecting the Load NCBI Data into db... item from the Server menu in GeneMOb 0.9 Client.

d. Running and maintenance. With all the components in place, the GeneMOb 0.9 Server is started from the Terminal window, by typing

./rungenemob

in the genemob_0.9 directory. It does not have any graphical user interface. To see GeneMOb 0.9 Server's process number, type

ps -efH | grep 'rmi'

The nohup (no hangup) command at the beginning of the Server's startup command in the rungenemob file assures that it continues to run after you log out. In addition, it prints all the messages from the Server to a file nohup.out, created in the genemob_0.9 directory. This is particularly useful in troubleshooting any potential problems. To stop the GeneMOb 0.9 Server, type

kill 1234

where 1234 is the process id number obtained with the ps command above.

The NCBI data can be periodically updated by repeating the process described in section c.3.

e. Tips and troubleshooting.
1. Simple data exchanges between GeneMOb Client and Server, such as the initial display of the collection tree, or display of a collection table when user clicks on a collection node, should be practically instantaneous. If they seem to be slow, explicitly define the host IP address (Server) on the Client machine:
a. On Windows, edit file WINDOWS\system32\drivers\etc\hosts
b. On the Mac, NetInfo Manager application - new machine
c. On Linux, System Settings > Network > Hosts