Installation guide for Coevolution (written by Kevin Yip, September 4 2007 version) ------------------------------------------------------------------------------- Coevolution is implemented in Java. There are three ways to use the classes: 1. The easiest way is to use the web interface at http://coevolution.gersteinlab.org/, which provides step-by-step guidelines for calling the classes running at a backend server. 2. If you need to perform large-scale experiments, it is better to download the codes from the web site and run them locally. To do so, . Download the package at http://coevolution.gersteinlab.org/coevolution/dist/coevolution.jar. . Unpackage it and place it at a certain directory, to be referred to as {LOCAL}. . Build the list of proteins in {LOCAL}/intraProteins.txt. . Configure the system by modifying the options in the file {LOCAL}/conf/intra.config. . Copy the file "ant.properties.example" in the {LOCAL}/conf directory to "ant.properties" and place it in the same directory. . Install Apache Ant (http://ant.apache.org/) if it is not installed. The user manual, which contains installation instructions, can be found at http://ant.apache.org/manual/index.html. . At {LOCAL} directory, run the command "ant intra". 3. If you want to use the classes in your own programs, you only need the file WEB-INF/lib/coevolution.jar in the package downloadable at http://coevolution.gersteinlab.org/coevolution/dist/coevolution.jar. Simply put it in your classpath so that the Java compiler and runtime environment can find it. The remaining of this installation guide is for those who want to run a Coevolution server locally, so that users can call the codes through a web interface running on the server. The system consists of Java Server Pages (JSP) and servlets that need to be run in a servlet engine. The system requires a backend MySQL database for storing data. It also requires some third-party libraries. There are two ways to install the package, either using the "deploy" Ant task, or copy the compiled files to the servlet engine directly. The following procedures are required by both methods: . Install or configure a web server and a servlet engine (recommended: Apache Tomcat http://tomcat.apache.org/index.html, tested version: 5.0. Below the directory structure of Tomcat will be assumed). The directory where the server is installed will be called the {SERVER_HOME} directory. . To avoid others listing the files in a directory, please disable the directory listing feature. For Tomcat, this is done by editing the web.xml file in the {SERVER_HOME}/conf directory, and setting the "listings" parameter to false. . Unpackage the distribution file "coevolution.jar" to a local directory. Below it will be called the {LOCAL} directory. . In the webapps directory of the servlet engine, create the directory "coevolution". Below it will be called the {COEV_HOME} directory. . Install or configure a MySQL database server (http://www.mysql.com/, tested version: 4.0.21). . Open the file tables.sql.example in the {LOCAL}/sql directory, and modify "localhost" and "foo" to the hostname of the MySQL server and a password you want to use for a MySQL user respectively. . Run the SQL script. . Copy the file "web.config.example" in the {LOCAL}/conf directory to "web.config" and place it in the same directory. . Modify the settings in {LOCAL}/conf/web.config. . Download the following library files to the {LOCAL}/WEB-INF/lib directory: . BioJava (http://biojava.org/wiki/Main_Page, tested version: 1.5 beta 2) . Java API for servlets (http://java.sun.com/j2ee/index.jsp, tested version: 2.4) . JFreeChart (http://www.jfree.org/jfreechart/, tested version: 1.0.2) . JSci (http://jsci.sourceforge.net/, tested version: 0.94) . MySQL connector (http://www.mysql.com/products/connector/j/, tested version: 3.0.16) . Oreilly servlet utilities (http://servlets.com/cos/) The following procedures are only for method 1: using Ant task . Install or setup Apache Ant (http://ant.apache.org/) . Copy the file "ant.properties.example" in the {LOCAL}/conf directory to "ant.properties" and place it in the same directory. . Modify the settings in {LOCAL}/conf/ant.properties (be consistent with web.config). . At {LOCAL} directory, run the command "ant deploy". . Restart the servlet engine. The following procedures are only for method 2: direct copying . Create the following empty directories: . {COEV_HOME}/WEB-INF . {COEV_HOME}/temp . Copy the following files (or whole directory, with files inside) to the servlet engine: . {LOCAL}/*.jsp -> {COEV_HOME}/*.jsp . {LOCAL}/conf/web.config -> {COEV_HOME}/WEB-INF/classes/web.config . {LOCAL}/css -> {COEV_HOME}/css . {LOCAL}/javadoc -> {COEV_HOME}/javadoc . {LOCAL}/media -> {COEV_HOME}/media . {LOCAL}/scripts -> {COEV_HOME}/scripts . {LOCAL}/WEB-INF/web.xml -> {COEV_HOME}/WEB-INF/web.xml . {LOCAL}/WEB-INF/lib -> {COEV_HOME}/WEB-INF/lib . Restart the servlet engine.