GWT phylogenetic tree viewer
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 222 commits ahead, 2 commits behind akubach:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



This is a technical solution to the scientific problem of visualizing phylogenetic relationships. It provides the visualization aspects needed.

This is alpha code. It worked when we ran it, but no guarantees of any kind are made that it will work for anyone else anywhere.

More information about iPlant's Open Source policies and current status is available at

An update to this README is in progress.

See the LICENSE file included with this code.

Source code is available at:

Build info for Apache Maven is in pom.xml.

Download and compile
Apache Maven

Apache Tomcat 7.0
PostgreSQL 9.0
PostGIS spatial data extension

Download source code
git clone git://

Compile and package
cd phyloviewer
mvn clean package

copy phyloviewer/apps/viewer/target/phyloviewer.war to your server's tomcat webapps directory
restart tomcat
note that overview images for previously uploaded trees will be lost when the app is redeployed.

Database setup
Phyloviewer retrieves trees from a PostgreSQL database.
See phyloviewer/apps/viewer/src/main/sql/readme.txt for setup instructions
Edit webapps/phyloviewer/WEB-INF/web.xml (in the deployed app) to configure the database connection.
See for instructions on uploading a tree to phyloviewer.

Redeploying the app currently deletes any tree overview images it generated, since they're stored inside the app directory. Move the images directory elsewhere while redeploying the app. (In the future, it should probably just be reconfigured to save images somewhere else, or regenerate them as needed.)
If you are running tomcat behind an apache server proxy with SELinux enabled, SELinux must be set to allow the proxy to connect to tomcat, using setsebool httpd_can_network_connect 1.
The fact that phyloviewer is behind the httpd proxy was messing up the servlet context path, and making it impossible for GWT to load its *.gwt.rpc files. Until recently, it's just been hitting that error, and falling back to some "legacy serialization policy", which seemed to work. Recent changes no longer work with the legacy serialization policy. The solution that seems to work best so far is to make phyloviewer the ROOT app in tomcat.
Using the tomcat management web app makes the deployment a little simpler. Some setup is required.
On portnoy, apache is currently configured to redirect some old tree URLs to new URLs, using RewriteMap. See /etc/httpd/conf.d/__vhosts.conf and id2hash for the mappings.


Use the issue tracker available from the GitHub repository at the link listed under SOURCE above. Click Issues to submit a question or report a problem.

iPlant requires all outside collaborators (those not employed by iPlant) to sign and submit a Contributor License Agreement. Details as well as answers to Frequently Asked Questions about this agreement are available at

Other steps in the process are still being created. While this message remains, email