Installation and Setup


    A Jemboss server is available at the HGMP for registered users. The user can download the client from a web-page using Java Web Start. In this way any updates to the client can be automatically detected and downloaded.

    Jemboss uses Java Native Interface (JNI) to enable it to utilise the EMBOSS ajax library. This is used to calculate sequence attributes from any of the numerous formats that EMBOSS can use.

    Jemboss currently uses Embreo which is still being developed at the HGMP, to make SOAP calls to the server.

    Note, this software has been developed and tested, so far,  using Java1.3.
 

Directories

 
Directory Contents
api Jemboss API 
lib related java jar files (soap etc)
resources Jemboss property file
org/emboss/jemboss Jemboss package
embreo Embreo package

 

Client Compilation

1. Goto the Jemboss directory.

2. Set the classpath
setenv CLASSPATH :lib/soap.jar:lib/xerces.jar:lib/mail.jar:lib/activation.jar:lib/jakarta-regexp-1.2.jar:embreo/embreo-full.jar:.:

3. Compile with java 1.3
javac org/emboss/jemboss/Jemboss.java

4. If you are running in the stand-alone mode (i.e. not using the server code),
set the environment variable LD_LIBRARY_PATH:

setenv LD_LIBRARY_PATH $emboss/ajax/.libs (where $emboss is the directory of your local EMBOSS installation).

Note:  To configure EMBOSS to use the Java Native Interface in Jemboss a "--with-java" and "--with-javaos" need to be used, and pointed at the java (1.3) installation. For example:

./configure --enable-warnings --with-pngdriver=/packages/emboss/png --with-java=/packages/java/jdk1.3/include  --with-javaos=/packages/java/jdk1.3/include/solaris

and must not be configured using the --disable-shared configure option.

5. Also, if you are running the standalone version the jemboss.properties file needs to be setup. This file needs to be in the users home directory or the Jemboss resources directory. This file contains the environment variables that are used to run the EMBOSS applications.

For the standalone mode it therefore contains the path information. For example:

plplot=/home/emboss/STABLE/share/EMBOSS/
embossData=/home/emboss/STABLE/share/EMBOSS/data/
embossBin=/home/emboss/STABLE/share/EMBOSS/
embossPath=/bin:/home/clustal/:
acdDirToParse=/packages/emboss/STABLE/share/EMBOSS/acd/

For the client version it will contain the server information. For example:

user.auth=true
server.public=http://pubsoap1.hgmp.mrc.ac.uk/soap/servlet/rpcrouter
server.private=http://privsoap2.hgmp.mrc.ac.uk/cgi-bin/soap.cgi
service.public=JembossServer
service.private=EmbossSoap

The first line in this example (user.auth) means that the server is expecting a username and password, to be able to run the EMBOSS applications. The next two lines are the location of the public and private servers, that the Jemboss client is expecting to access. The last lines in this file are the names of the two servers.

6. To run Jemboss client (client-server mode):

java org/emboss/Jemboss/Jemboss &

or, in the standalone:

java org/emboss/Jemboss/Jemboss local &       
 

Server Setup

    The server setup is very much dependent on the local environment and the level of security necessary for that site. The server that is in the distribution is very much in development. It will be necessary for any other site to design their own method of deploying these soap service methods that the client accesses.

     The Jemboss server at the HGMP uses two servers. The first is a public server (no authentication necessary), which serves to launch Jemboss and display the program forms and help. To run any of the applications a second, private server is used which requires the username and password to be provided by the user.

    The Java server code is in org.emboss.jemboss.server.JembossServer class (and the classes uses org.emboss.jemboss.Ajax org.emboss.jemboss.RunEmbossApplication). This is used for the public Jemboss server at the HGMP. The public methods are then deployed using an Apache TomCat server.

    At present most of the private and public server methods (except those used by the job manager) are provided by this Java server. However, the private server used at the HGMP runs as a perl script and this is also provided in the distribution.
 

Acknowledgements:

The EMBOSS development team. In particular, Alan Bleasby for his contribution to the JNI code, to call the EMBOSS ajax library.
This product includes software developed by the Apache Software Foundation (http://www.apache.org/).
 
 



tcarver@hgmp.mrc.ac.uk