The excellent Jalview sequence alignment visualization and editing tool has the ability to send a set of sequences to a multiple sequence alignment web service (“JABAWS”) and receive the results in a new alignment window. This is really convenient when you are doing lots of sequence analysis, and Geoff Barton’s group at the University of Dundee provide a JABAWS server that Jalview will use by default.
But maybe the Dundee server is down. Or maybe you think your local machine will do things faster. Or maybe you work on über secret sequences in some Faraday cage bunker with no permanent network connection. In each of these cases, you may want to run your own local JABAWS server and use that instead. In this case, read on.
Install Apache Tomcat and the management interface:
sudo apt-get install tomcat6 tomcat6-admin
As root, edit the /etc/tomcat6/tomcat-users.xml file to enable admin access.
Between the <tomcat-users></tomcat-users> tags, add:
<role rolename="admin"/> <user username="tomcat" password="s3cret" roles="admin"/>
where ‘s3cret’ is a secret password for the user ‘admin’.
Go to http://localhost:8080/manager/html/ and login as ‘admin’ and the password you set.
Under “WAR file to deploy”, click on the “Choose File” button, and select the jaba.war file you downloaded.
Now you need to set the permissions of the Muscle/Mafft/Clustal etc binaries that come packaged with JABAWS. Type the following commands:
sudo chmod +x setexecflag.sh
This should do it .. in Jalview, go to Preferences, and under the “Web Services” tab add a new service URL “http://localhost:8080/jaba” (no quotes, no trailing backslash). Now when you load an alignment, your local JABAWS server should appear under the “Web Service->JABAWS Alignment menu”.
For the record .. I tried this under the version of Jetty packaged with Ubuntu 11.04, but I couldn’t get it to work so I gave up and just did it with Tomcat as per the JABAWS documentation.
This HOWTO is an Ubuntu specific regurgitation of the docs below.