From: Fábio Madeira Date: Mon, 13 Feb 2017 16:52:02 +0000 (+0000) Subject: JWS-109 Moved HTML files and some other source files to a backup V_2_1_0 folder.... X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=b36a3b7ec7d88d9f78bbe1a5794e2bf638540292;p=jabaws.git JWS-109 Moved HTML files and some other source files to a backup V_2_1_0 folder. Moving to JSP dynamic page generation. --- diff --git a/website/Example_template.pdf b/website/v_2_1_0/Example_template.pdf similarity index 100% rename from website/Example_template.pdf rename to website/v_2_1_0/Example_template.pdf diff --git a/website/contacts.html b/website/v_2_1_0/contacts.html similarity index 97% rename from website/contacts.html rename to website/v_2_1_0/contacts.html index c46fc4f..dc2e943 100644 --- a/website/contacts.html +++ b/website/v_2_1_0/contacts.html @@ -1,77 +1,77 @@ - - - - - - -Java Bioinformatics Analysis Web Services (JABAWS) download page - - - - - - - -
- - - -
- - - -
- -

Contact Us

-

Mailing List

-

Please feel free to post your questions/issues to the jabaws-discuss mailing list.

-

Contact Details

-

The Barton Group
- Division of Computational Biology
- College of Life Sciences
- University of Dundee
- Dow Street
- Dundee
- DD1 5EH
- Scotland UK

-

-
- - -
- - - - - - - -
- - + + + + + + +Java Bioinformatics Analysis Web Services (JABAWS) download page + + + + + + + +
+ + + +
+ + + +
+ +

Contact Us

+

Mailing List

+

Please feel free to post your questions/issues to the jabaws-discuss mailing list.

+

Contact Details

+

The Barton Group
+ Division of Computational Biology
+ College of Life Sciences
+ University of Dundee
+ Dow Street
+ Dundee
+ DD1 5EH
+ Scotland UK

+

+
+ + +
+ + + + + + + +
+ + diff --git a/website/index.html b/website/v_2_1_0/index.html similarity index 98% rename from website/index.html rename to website/v_2_1_0/index.html index d600183..556c8af 100644 --- a/website/index.html +++ b/website/v_2_1_0/index.html @@ -1,182 +1,182 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS) main page - - - - - - - -
- - - - - - -
-
-

JABAWS 2.1

-

-JABAWS -is free software which provides web services conveniently -packaged to run on your local computer, server, cluster or Amazon EC2 instance. -

- -

Services for multiple sequence alignment include -Clustal Omega, -Clustal W, -MAFFT, -MUSCLE, -T-Coffee, -ProbCons, -MSAProbs, and -GLProbs. -Analysis services allow prediction of the protein secondary structure with -Jpred and protein disorder with -DisEMBL, -IUPred, -Jronn (a Java implementation of Ronn by P. Troshin and G. Barton, unpublished), and -GlobPlot; and calculation of amino acid alignment conservation -with AACon. -The secondary structure for an RNA aligment can be predicted with the RNAalifold program from the -Vienna RNA package. -

- -

-JABAWS 2.1 installation can be accessed from the Jalview desktop -application (version 2.8 onwards) and the JABAWS command-line client.
-JABAWS 2.1 is able to provide multiple alignment and sequence analysis calculations limited only by your own -computing resources.
-

- -
- - - - - - - - - -
-
-

For Users

-
- The Server: JABAWS Virtual Appliance: (440M) - or JABAWS on Amazon Webservices Cloud
- The Main Client: Jalview (18M) -

To use JABAWS web services on most operating systems, just download and install - the JABAWS Virtual Appliance (VA).
- Or even easier - just start JABAWS machine on the cloud and point Jalview at it!

-
-
-
-

For System Administrators

-
-

- The Server: JABAWS Web - Application aRchive (55M) -

-

JABAWS requires a Servlet 2.4 compatible servlet container like Apache Tomcat - to run. Please check the quick start guide for installation instructions. -

-
-
-

For Bioinformaticians/Developers

-
-The Server: JABAWS Web Application aRchive (55M) -
- The Client: - Command Line Client binary | source - -

-You can either use the JABAWS Virtual Appliance or the JABAWS Web Application aRchive (WAR) from your own computer or a lab server. -The WAR version gives greater flexibility but requires a bit more configuration. Alternatively you can script against our public -server (see below) with the command line client or you own script. -Check out the quick start guide for further details.

- -
-
-
- -

Public JABAWS Server

-

You can access our public JABAWS web services with our command line client, - Jalview, or with your own program. Jalview version 2.8 or later is fully compatible with JABAWS 2.1. - The latest versions of Jalview are configured to use public JABAWS server by default.

-
    -
  • The JABAWS public web services address is http://www.compbio.dundee.ac.uk/jabaws
  • -
  • A detailed web services description is available from here: WSDL List
  • -
-

These web services accept submissions of less than one thousand sequences. Should you find this to be insufficient for your needs, - or if you are concerned about privacy or on an unreliable network connection, then you can - download and run the JABAWS Server on your own hardware.

- - - -

Previous versions of JABAWS

-

-We advise you to update to JABAWS 2.1 as this version is fully backward compatible with JABAWS v1.0 and v2.0 and contains -some important bug fixes. Please consult the manual -for more information on compatibility between versions.

Should you require them, however, old versions of JABAWS are available here:

- - - - -

Reference

-

- Peter V. Troshin, James B. Procter and Geoffrey J. Barton - "Java Bioinformatics Analysis Web Services for -Multiple Sequence Alignment - JABAWS:MSA" Bioinformatics 2011; - -doi: 10.1093/bioinformatics/btr304.

-
- -
-
- - - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS) main page + + + + + + + +
+ + + + + + +
+
+

JABAWS 2.1

+

+JABAWS +is free software which provides web services conveniently +packaged to run on your local computer, server, cluster or Amazon EC2 instance. +

+ +

Services for multiple sequence alignment include +Clustal Omega, +Clustal W, +MAFFT, +MUSCLE, +T-Coffee, +ProbCons, +MSAProbs, and +GLProbs. +Analysis services allow prediction of the protein secondary structure with +Jpred and protein disorder with +DisEMBL, +IUPred, +Jronn (a Java implementation of Ronn by P. Troshin and G. Barton, unpublished), and +GlobPlot; and calculation of amino acid alignment conservation +with AACon. +The secondary structure for an RNA aligment can be predicted with the RNAalifold program from the +Vienna RNA package. +

+ +

+JABAWS 2.1 installation can be accessed from the Jalview desktop +application (version 2.8 onwards) and the JABAWS command-line client.
+JABAWS 2.1 is able to provide multiple alignment and sequence analysis calculations limited only by your own +computing resources.
+

+ +
+ + + + + + + + + +
+
+

For Users

+
+ The Server: JABAWS Virtual Appliance: (440M) + or JABAWS on Amazon Webservices Cloud
+ The Main Client: Jalview (18M) +

To use JABAWS web services on most operating systems, just download and install + the JABAWS Virtual Appliance (VA).
+ Or even easier - just start JABAWS machine on the cloud and point Jalview at it!

+
+
+
+

For System Administrators

+
+

+ The Server: JABAWS Web + Application aRchive (55M) +

+

JABAWS requires a Servlet 2.4 compatible servlet container like Apache Tomcat + to run. Please check the quick start guide for installation instructions. +

+
+
+

For Bioinformaticians/Developers

+
+The Server: JABAWS Web Application aRchive (55M) +
+ The Client: + Command Line Client binary | source + +

+You can either use the JABAWS Virtual Appliance or the JABAWS Web Application aRchive (WAR) from your own computer or a lab server. +The WAR version gives greater flexibility but requires a bit more configuration. Alternatively you can script against our public +server (see below) with the command line client or you own script. +Check out the quick start guide for further details.

+ +
+
+
+ +

Public JABAWS Server

+

You can access our public JABAWS web services with our command line client, + Jalview, or with your own program. Jalview version 2.8 or later is fully compatible with JABAWS 2.1. + The latest versions of Jalview are configured to use public JABAWS server by default.

+
    +
  • The JABAWS public web services address is http://www.compbio.dundee.ac.uk/jabaws
  • +
  • A detailed web services description is available from here: WSDL List
  • +
+

These web services accept submissions of less than one thousand sequences. Should you find this to be insufficient for your needs, + or if you are concerned about privacy or on an unreliable network connection, then you can + download and run the JABAWS Server on your own hardware.

+ + + +

Previous versions of JABAWS

+

+We advise you to update to JABAWS 2.1 as this version is fully backward compatible with JABAWS v1.0 and v2.0 and contains +some important bug fixes. Please consult the manual +for more information on compatibility between versions.

Should you require them, however, old versions of JABAWS are available here:

+ + + + +

Reference

+

+ Peter V. Troshin, James B. Procter and Geoffrey J. Barton - "Java Bioinformatics Analysis Web Services for +Multiple Sequence Alignment - JABAWS:MSA" Bioinformatics 2011; + +doi: 10.1093/bioinformatics/btr304.

+
+ +
+
+ + + + + + + + diff --git a/website/jabaws_funding.html b/website/v_2_1_0/jabaws_funding.html similarity index 98% rename from website/jabaws_funding.html rename to website/v_2_1_0/jabaws_funding.html index be90e0e..08d3786 100644 --- a/website/jabaws_funding.html +++ b/website/v_2_1_0/jabaws_funding.html @@ -1,83 +1,83 @@ - - - - - -Java Bioinformatics Analyses Web Services (JABAWS) Command Line Client manual - - - - - - - -
- - - -
- - - -
-

JABAWS FUNDING

-

-The current funding for JABAWS development is provided by the BBSRC Bioinformatics and Biological Resources Grant: -"The Dundee Resource for Protein Structure Prediction and Sequence Analysis" 2013 to 2018 (BB/J019364/1) to Prof. -Geoff Barton.
-Further support comes from Wellcome Trust Strategic Grant: 100476. -

- -

- Initial development was funded from a mixture of sources including: BBSRC grants (BBS/B/14434, BB/G022682/1), - Wellcome Trust Strategic Grant (No. 083481), European Commision Framework of Excellence ENFIN - (LSHGCT-2005-518254) and the Scottish Universities Life Sciences Alliance (SULSA). -

- - - - - - - - -
ENFINWellcome TrustSULSA
-

-

-
- -
-
- - - - - - - + + + + + +Java Bioinformatics Analyses Web Services (JABAWS) Command Line Client manual + + + + + + + +
+ + + +
+ + + +
+

JABAWS FUNDING

+

+The current funding for JABAWS development is provided by the BBSRC Bioinformatics and Biological Resources Grant: +"The Dundee Resource for Protein Structure Prediction and Sequence Analysis" 2013 to 2018 (BB/J019364/1) to Prof. +Geoff Barton.
+Further support comes from Wellcome Trust Strategic Grant: 100476. +

+ +

+ Initial development was funded from a mixture of sources including: BBSRC grants (BBS/B/14434, BB/G022682/1), + Wellcome Trust Strategic Grant (No. 083481), European Commision Framework of Excellence ENFIN + (LSHGCT-2005-518254) and the Scottish Universities Life Sciences Alliance (SULSA). +

+ + + + + + + + +
ENFINWellcome TrustSULSA
+

+

+
+ +
+
+ + + + + + + diff --git a/website/man_about.html b/website/v_2_1_0/man_about.html similarity index 98% rename from website/man_about.html rename to website/v_2_1_0/man_about.html index 95b0f35..ffa16f4 100644 --- a/website/man_about.html +++ b/website/v_2_1_0/man_about.html @@ -1,240 +1,240 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS): Manual - - - - - - - -
- - - - - -
- - - - -
-

JABAWS MANUAL

-

About

- - - - - -

What is JABAWS?

-

- JABAWS stands for JAva Bioinformatics Analysis Web Services. As the name suggests, JABAWS is a - collection of web services for bioinformatics, and currently provides services that make it easy - to access well-known multiple sequence alignment and protein disorder prediction programs - (see the list of currently supported programs) from Jalview. - Future versions of JABAWS will incorporate other tools. -

-

Getting JABAWS

-

- JABAWS consists of a server and a client, but unlike most bioinformatics web service systems, you can download and - run both parts on your own computer! If you want a server just for yourself, then download and install the JABAWS - Virtual Appliance. It requires no configuration and is simple to install. If you want to install JABAWS for your - lab or institution then download the JABAWS Web Application aRchive. It is slightly more complicated to configure - but is very straightforward too. Finally, if you want to script against any version of JABAWS or are interested - in writing your own client, the JABAWS command line client is what you need. -

- - - -

JABAWS Benefits

-
    -
  • Can be deployed on most operating systems, as a VMware or other compatible Virtual Appliance or a Tomcat Java Web Application.
  • -
  • Comes complete with sources and binaries for all the bioinformatics programs that it runs.
  • -
  • Can operate as a stand alone server or one that submits jobs to a cluster via DRMAA.
  • -
  • Easy to access from Jalview using its graphical client, or using the JABAWS command line client.
  • -
  • Clients can submit jobs to any JABAWS servers that they might want to access, such as the one running on your local computer, - your lab's server, or the publicly available services at the University of Dundee.
  • -
  • Local or intranet installation eliminates any security concerns you might have about sending sensitive data over the internet.
  • -
  • Wide range of configuration options to control size of jobs accepted by a server, and the command line options available for the program run by a service.
  • -
- - - -

JABA Web Services Programs

-

JABAWS currently provides access to the following programs:

-

Multiple Sequence Alignement

-
-

Protein Secondary structure prediction

- - -

Protein disorder prediction

- -

Amino Acid conservation

- -

Secondary structure for an RNA aligment

- - -All these codes including Jronn and AAcon are available at the Download -section (registration is required). - - - -

What is new in JABAWS 2.1?

-JABAWS Version 2.1 (Released 1st Oct 2013) -

Several new web services are available in this version of JABAWS:

-
    -
  • Two multiple sequence aligners (MSAprobs and GLprobs), both services return the standard Alignment object
  • -
  • RNAalifoldWS returns RNAStructScoreManager, which is the standard ScoreManager objects with several additional methods
  • -
  • - JpredWS returns the JpredAligment object, which is the standard alignment with additional methods for extracting - Jpred predictions. These predictions are supplied as additional sequences in the aligment -
  • -
- -

Some bugs have been fixed and several improvements have been done:

-
    -
  • WS status servlet returns version and some additional information on each web service
  • -
  • a bug with path to help in the client
  • -
  • Fix two bug with the Google Analytics library: no-stop due to running thread
  • -
  • GoogleAnalytics gets proper JABAWS version
  • -
- - -JABAWS Version 2.0.1 (Released 2nd Jul 2013)

JABAWS 2.0.1 includes several bug fixes and minor updates for JABAWS Version 2.0. These are listed below:

-
    -
  • Disembl returned swapped strings for HOTLOOPS and REM465
  • -
  • Jronn failed to process jobs with more than 3 sequences
  • -
  • JABAWS could not deal with FASTA records with '>' symbols in the record identificator
  • -
  • Change of parameter description for AAcon: parameters have been replaced with options for calculation methods. This allows a user to get several AAcon's conservation scores - in one call
  • -
  • JABAWS never cleaned up job directories. Now JABAWS deletes the job directory if it exist longer than a period defined in Engine.properties
  • -
  • Default web security has been incompatible with Tomcat 7.0.31 and newer
  • -
  • Documentation has been updated
  • -
- JABAWS Version 2 (Released 16th Dec 2011)

Compared to JABAWS 1, JABAWS 2 offers a greater number and diversity of web services, Amazon EC2 integration and improved ease of use.

It contains:

-
  • updates for all multiple sequence alignment services
  • -
  • four new protein disorder prediction services
  • -
  • Clustal Omega multiple sequence alignment web service
  • -
  • amino acid conservation service
  • -
  • web services execution statistics visualization
  • -
  • web services status check from a web page
  • -
  • VirtualBox support was dropped in favour of VMware
  • -
  • new WAR package for Mac users
  • -
  • Amazon Machine Image (AMI) distributive to enable users to use JABAWS on the EC2 cloud
  • -
  • Improved web services client API
  • -
  • Simplified WAR package installation
  • -
- - - -

What is JABAWS client?

-

- A JABAWS client is a Java application that lets you run the programs for which a JABAWS server provides web - services. The most basic JABAWS client is a command line application this is able to call any of the JABAWS web - services on any instance of JABAWS Server available over the web. The basic client is useful if you would like - to test or execute the programs provided by theJABAWS server in your own scripts, but you do not want to handle - any web service specific details. The client is an open source software, so you can also use the source code to - as an example how to manipulate with JABAWS web services in your own code. - Jalview, a multiple sequence alignment and analysis application, is a good - example of a graphical JABAWS client. This client uses the same functionality as the command line client, but - instead allows JABAWS services to be accessed in a more user-friendly manner, through a graphical user interface. -

- - - -

JABAWS versions compatibility and Jalview support

-

- JABAWS version 2.1 is fully backward compatible with JABAWS v1.0 and v2.0. This means all JABAWS 1.0 and 2.0 and - 2.0.1 clients should also be able to use JABAWS 2.1 services. To access the analysis web services introduced in - JABAWS 2.0, however, clients that were designed for JABAWS v1.0 must be updated. -

- - - -

Programmatic access to JABAWS

-

- JABAWS web services are WS-I basic profile compliant, which means they can be accessed using any programming language - or system that can utilize standard SOAP web services. The WSDL for each service is published on the JABAWS home - page, and you can use this to automatically generate service bindings for your program. If you use Java - you may wish to use our client package to access JABAWS. - This package is based on the autogenerated source code produced by wsimport, which - is the Java tool for creating web service bindings. In addition, this offers some additional methods that simplify - working with JABAWS. For more information please refer to the data model javadoc. -

-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS): Manual + + + + + + + +
+ + + + + +
+ + + + +
+

JABAWS MANUAL

+

About

+ + + + + +

What is JABAWS?

+

+ JABAWS stands for JAva Bioinformatics Analysis Web Services. As the name suggests, JABAWS is a + collection of web services for bioinformatics, and currently provides services that make it easy + to access well-known multiple sequence alignment and protein disorder prediction programs + (see the list of currently supported programs) from Jalview. + Future versions of JABAWS will incorporate other tools. +

+

Getting JABAWS

+

+ JABAWS consists of a server and a client, but unlike most bioinformatics web service systems, you can download and + run both parts on your own computer! If you want a server just for yourself, then download and install the JABAWS + Virtual Appliance. It requires no configuration and is simple to install. If you want to install JABAWS for your + lab or institution then download the JABAWS Web Application aRchive. It is slightly more complicated to configure + but is very straightforward too. Finally, if you want to script against any version of JABAWS or are interested + in writing your own client, the JABAWS command line client is what you need. +

+ + + +

JABAWS Benefits

+
    +
  • Can be deployed on most operating systems, as a VMware or other compatible Virtual Appliance or a Tomcat Java Web Application.
  • +
  • Comes complete with sources and binaries for all the bioinformatics programs that it runs.
  • +
  • Can operate as a stand alone server or one that submits jobs to a cluster via DRMAA.
  • +
  • Easy to access from Jalview using its graphical client, or using the JABAWS command line client.
  • +
  • Clients can submit jobs to any JABAWS servers that they might want to access, such as the one running on your local computer, + your lab's server, or the publicly available services at the University of Dundee.
  • +
  • Local or intranet installation eliminates any security concerns you might have about sending sensitive data over the internet.
  • +
  • Wide range of configuration options to control size of jobs accepted by a server, and the command line options available for the program run by a service.
  • +
+ + + +

JABA Web Services Programs

+

JABAWS currently provides access to the following programs:

+

Multiple Sequence Alignement

+
+

Protein Secondary structure prediction

+ + +

Protein disorder prediction

+ +

Amino Acid conservation

+ +

Secondary structure for an RNA aligment

+ + +All these codes including Jronn and AAcon are available at the Download +section (registration is required). + + + +

What is new in JABAWS 2.1?

+JABAWS Version 2.1 (Released 1st Oct 2013) +

Several new web services are available in this version of JABAWS:

+
    +
  • Two multiple sequence aligners (MSAprobs and GLprobs), both services return the standard Alignment object
  • +
  • RNAalifoldWS returns RNAStructScoreManager, which is the standard ScoreManager objects with several additional methods
  • +
  • + JpredWS returns the JpredAligment object, which is the standard alignment with additional methods for extracting + Jpred predictions. These predictions are supplied as additional sequences in the aligment +
  • +
+ +

Some bugs have been fixed and several improvements have been done:

+
    +
  • WS status servlet returns version and some additional information on each web service
  • +
  • a bug with path to help in the client
  • +
  • Fix two bug with the Google Analytics library: no-stop due to running thread
  • +
  • GoogleAnalytics gets proper JABAWS version
  • +
+ + +JABAWS Version 2.0.1 (Released 2nd Jul 2013)

JABAWS 2.0.1 includes several bug fixes and minor updates for JABAWS Version 2.0. These are listed below:

+
    +
  • Disembl returned swapped strings for HOTLOOPS and REM465
  • +
  • Jronn failed to process jobs with more than 3 sequences
  • +
  • JABAWS could not deal with FASTA records with '>' symbols in the record identificator
  • +
  • Change of parameter description for AAcon: parameters have been replaced with options for calculation methods. This allows a user to get several AAcon's conservation scores + in one call
  • +
  • JABAWS never cleaned up job directories. Now JABAWS deletes the job directory if it exist longer than a period defined in Engine.properties
  • +
  • Default web security has been incompatible with Tomcat 7.0.31 and newer
  • +
  • Documentation has been updated
  • +
+ JABAWS Version 2 (Released 16th Dec 2011)

Compared to JABAWS 1, JABAWS 2 offers a greater number and diversity of web services, Amazon EC2 integration and improved ease of use.

It contains:

+
  • updates for all multiple sequence alignment services
  • +
  • four new protein disorder prediction services
  • +
  • Clustal Omega multiple sequence alignment web service
  • +
  • amino acid conservation service
  • +
  • web services execution statistics visualization
  • +
  • web services status check from a web page
  • +
  • VirtualBox support was dropped in favour of VMware
  • +
  • new WAR package for Mac users
  • +
  • Amazon Machine Image (AMI) distributive to enable users to use JABAWS on the EC2 cloud
  • +
  • Improved web services client API
  • +
  • Simplified WAR package installation
  • +
+ + + +

What is JABAWS client?

+

+ A JABAWS client is a Java application that lets you run the programs for which a JABAWS server provides web + services. The most basic JABAWS client is a command line application this is able to call any of the JABAWS web + services on any instance of JABAWS Server available over the web. The basic client is useful if you would like + to test or execute the programs provided by theJABAWS server in your own scripts, but you do not want to handle + any web service specific details. The client is an open source software, so you can also use the source code to + as an example how to manipulate with JABAWS web services in your own code. + Jalview, a multiple sequence alignment and analysis application, is a good + example of a graphical JABAWS client. This client uses the same functionality as the command line client, but + instead allows JABAWS services to be accessed in a more user-friendly manner, through a graphical user interface. +

+ + + +

JABAWS versions compatibility and Jalview support

+

+ JABAWS version 2.1 is fully backward compatible with JABAWS v1.0 and v2.0. This means all JABAWS 1.0 and 2.0 and + 2.0.1 clients should also be able to use JABAWS 2.1 services. To access the analysis web services introduced in + JABAWS 2.0, however, clients that were designed for JABAWS v1.0 must be updated. +

+ + + +

Programmatic access to JABAWS

+

+ JABAWS web services are WS-I basic profile compliant, which means they can be accessed using any programming language + or system that can utilize standard SOAP web services. The WSDL for each service is published on the JABAWS home + page, and you can use this to automatically generate service bindings for your program. If you use Java + you may wish to use our client package to access JABAWS. + This package is based on the autogenerated source code produced by wsimport, which + is the Java tool for creating web service bindings. In addition, this offers some additional methods that simplify + working with JABAWS. For more information please refer to the data model javadoc. +

+
+ +
+
+ + + + + + + diff --git a/website/man_awscloud.html b/website/v_2_1_0/man_awscloud.html similarity index 98% rename from website/man_awscloud.html rename to website/v_2_1_0/man_awscloud.html index 5f8bacd..35576d2 100644 --- a/website/man_awscloud.html +++ b/website/v_2_1_0/man_awscloud.html @@ -1,88 +1,88 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS): Manual - - - - - - - -
- - - - -
- - - - -
-

JABAWS MANUAL

- -
-

JABAWS on the Cloud

-

We provide pre-configured JABAWS Amazon Machine Image (AMI) which you can use on the Amazon EC2 cloud. Typical use cases are

-
    -
  • you need to perform large scale calculations but do not have the resources available locally
  • -
  • your organization already uses the Amazon cloud and you do not want to do any special arrangements for the JABAWS
  • -
  • you want to benefit from the Amazon automatic scaling and monitoring to make sure JABAWS is always ready
  • -
-

If you know what to do than JABAWS AMI ID is ami-d1d5e9a5, manifest 846107356395/JABAWS 2 to get you started, if not please refer to How to use JABAWS on the Amazon EC2 cloud pages.

-

Alternatively you can use JABAWS on the Amazon Elastic BeanStalk. You may want to use this option to deploy JABAWS in the cluster configuration.

-
-









-
- - -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS): Manual + + + + + + + +
+ + + + +
+ + + + +
+

JABAWS MANUAL

+ +
+

JABAWS on the Cloud

+

We provide pre-configured JABAWS Amazon Machine Image (AMI) which you can use on the Amazon EC2 cloud. Typical use cases are

+
    +
  • you need to perform large scale calculations but do not have the resources available locally
  • +
  • your organization already uses the Amazon cloud and you do not want to do any special arrangements for the JABAWS
  • +
  • you want to benefit from the Amazon automatic scaling and monitoring to make sure JABAWS is always ready
  • +
+

If you know what to do than JABAWS AMI ID is ami-d1d5e9a5, manifest 846107356395/JABAWS 2 to get you started, if not please refer to How to use JABAWS on the Amazon EC2 cloud pages.

+

Alternatively you can use JABAWS on the Amazon Elastic BeanStalk. You may want to use this option to deploy JABAWS in the cluster configuration.

+
+









+
+ + +
+
+ + + + + + + diff --git a/website/man_awscloud_bs.html b/website/v_2_1_0/man_awscloud_bs.html similarity index 98% rename from website/man_awscloud_bs.html rename to website/v_2_1_0/man_awscloud_bs.html index 8f0143b..4b1ec87 100644 --- a/website/man_awscloud_bs.html +++ b/website/v_2_1_0/man_awscloud_bs.html @@ -1,97 +1,97 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS): Manual - - - - - - - -
- - - - -
- - - - -
-

JABAWS MANUAL

- -

How to use JABAWS on Amazon Elastic Beanstalk

-
-
    -
  1. Create Amazon Web Services account. -
  2. -
  3. Log in into the Amazon Web Services (AWS) console and switch to AWS Elastic Beanstalk view. - Elastic Beanstalk launch JABAWS war step 1 -
  4. -
  5. Create a new Beanstalk application by uploading JABAWS war file: - Elastic Beanstalk launch JABAWS war step 2 -
  6. -
  7. Give a name to your JABAWS instance. This name will be a part of the access URL for your JABAWS. - Elastic Beanstalk launch JABAWS war step 3 -
  8. -
  9. Choose the type of hardware you want to run JABAWS on. - Elastic Beanstalk launch JABAWS war step 4 -
  10. -
  11. If everything goes well you should be able to access your JABAWS on http://jabaws.elasticbeanstalk.com - Elastic Beanstalk launch JABAWS war -
  12. -
-

 

-
-
- -
-
- - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS): Manual + + + + + + + +
+ + + + +
+ + + + +
+

JABAWS MANUAL

+ +

How to use JABAWS on Amazon Elastic Beanstalk

+
+
    +
  1. Create Amazon Web Services account. +
  2. +
  3. Log in into the Amazon Web Services (AWS) console and switch to AWS Elastic Beanstalk view. + Elastic Beanstalk launch JABAWS war step 1 +
  4. +
  5. Create a new Beanstalk application by uploading JABAWS war file: + Elastic Beanstalk launch JABAWS war step 2 +
  6. +
  7. Give a name to your JABAWS instance. This name will be a part of the access URL for your JABAWS. + Elastic Beanstalk launch JABAWS war step 3 +
  8. +
  9. Choose the type of hardware you want to run JABAWS on. + Elastic Beanstalk launch JABAWS war step 4 +
  10. +
  11. If everything goes well you should be able to access your JABAWS on http://jabaws.elasticbeanstalk.com + Elastic Beanstalk launch JABAWS war +
  12. +
+

 

+
+
+ +
+
+ + + + + + diff --git a/website/man_awscloud_ec2.html b/website/v_2_1_0/man_awscloud_ec2.html similarity index 98% rename from website/man_awscloud_ec2.html rename to website/v_2_1_0/man_awscloud_ec2.html index 384278e..b8b8939 100644 --- a/website/man_awscloud_ec2.html +++ b/website/v_2_1_0/man_awscloud_ec2.html @@ -1,116 +1,116 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS): Manual - - - - - - - -
- - - - -
- - - - -
-

JABAWS MANUAL

- -

How to use JABAWS on the Amazon EC2 cloud

-
-
    -
  1. Create Amazon Web Services account.
  2. -
  3. Log in into the Amazon Web Services (AWS) console. Make sure you are in the EU West (Ireland) region. JABAWS image is not available in other regions as yet. See marker 1.
  4. -
  5. Click on "Launch Instance" button marker 2. - AWS console -
  6. -
  7. Go to the "Community AMI" tab and search for JABAWS, then click select. - select AMI
  8. -
  9. Choose the "hardware" for your JABAWS server instance. "Large" instance should be sufficient for a single user needs. - If you are planning to use this instance as a server for the lab, you may want to select a more powerful machine. Once you have chosen - the hardware click continue. - select hardware -
  10. -
  11. You should not need to customize anything on this page, continue to the next page. - keys -
  12. -
  13. At the "Create a key pair" step, choose "Proceed without a key pair" unless you want to access JABAWS server via SSH. - -
  14. -
  15. Create a new security group with a single HTTP (80) port as shown below. You may want to add SSH (22) port if - you are planning to manage your instance via SSH. For starting/stopping your JABAWS instance, SSH is not necessary, - you can do this from the Amazon Webservices Console (AWS). - ese -
  16. -
  17. Review the configuration and launch the instance, then click "view your instances on the Instances page". - -
  18. -
  19. At this point you should have JABAWS instance up and running. Your AWS console should look something like this: - -
  20. -
  21. Now you can run JABAWS web services by accessing the public DNS address of your JABAWS server instance. - For instance, to register it with Jalview, just add the new JABAWS web server. Prefix your instance public - DNS address with http:// e.g. type: http://<public DNS>. The JABAWS instance on the screenshot can be - accessed on http://ec2-46-137-50-196.eu-west-1.compute.amazonaws.com. -
  22. -
-

If you need to run JABAWS for large organization you might want to configure load balancer and auto scaling. Please get in contact with us if you are interested in exploring such configurations.

-

 

-
-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS): Manual + + + + + + + +
+ + + + +
+ + + + +
+

JABAWS MANUAL

+ +

How to use JABAWS on the Amazon EC2 cloud

+
+
    +
  1. Create Amazon Web Services account.
  2. +
  3. Log in into the Amazon Web Services (AWS) console. Make sure you are in the EU West (Ireland) region. JABAWS image is not available in other regions as yet. See marker 1.
  4. +
  5. Click on "Launch Instance" button marker 2. + AWS console +
  6. +
  7. Go to the "Community AMI" tab and search for JABAWS, then click select. + select AMI
  8. +
  9. Choose the "hardware" for your JABAWS server instance. "Large" instance should be sufficient for a single user needs. + If you are planning to use this instance as a server for the lab, you may want to select a more powerful machine. Once you have chosen + the hardware click continue. + select hardware +
  10. +
  11. You should not need to customize anything on this page, continue to the next page. + keys +
  12. +
  13. At the "Create a key pair" step, choose "Proceed without a key pair" unless you want to access JABAWS server via SSH. + +
  14. +
  15. Create a new security group with a single HTTP (80) port as shown below. You may want to add SSH (22) port if + you are planning to manage your instance via SSH. For starting/stopping your JABAWS instance, SSH is not necessary, + you can do this from the Amazon Webservices Console (AWS). + ese +
  16. +
  17. Review the configuration and launch the instance, then click "view your instances on the Instances page". + +
  18. +
  19. At this point you should have JABAWS instance up and running. Your AWS console should look something like this: + +
  20. +
  21. Now you can run JABAWS web services by accessing the public DNS address of your JABAWS server instance. + For instance, to register it with Jalview, just add the new JABAWS web server. Prefix your instance public + DNS address with http:// e.g. type: http://<public DNS>. The JABAWS instance on the screenshot can be + accessed on http://ec2-46-137-50-196.eu-west-1.compute.amazonaws.com. +
  22. +
+

If you need to run JABAWS for large organization you might want to configure load balancer and auto scaling. Please get in contact with us if you are interested in exploring such configurations.

+

 

+
+
+ +
+
+ + + + + + + diff --git a/website/man_client.html b/website/v_2_1_0/man_client.html similarity index 98% rename from website/man_client.html rename to website/v_2_1_0/man_client.html index 757f672..c23ef14 100644 --- a/website/man_client.html +++ b/website/v_2_1_0/man_client.html @@ -1,114 +1,114 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS): Manual - - - - - - - -
- - - - - -
- - - - -
-

JABAWS MANUAL

- -

JABAWS Command Line Client Usage

-

-The command line client comes as a part of client package which you are welcome to download. -The command line client can be used to align sequences using any of JABAWS supported web services. The client is OS independent and supports most of -the functions which can be accessed programmatically via JABAWS API. Using this client you could align sequences -using presets or custom parameters, please see examples of this below. Here is the list of options supported by the command line client. -

-Usage:
java -jar <path_to_jar_file> -h=host_and_context -s=serviceName ACTION [OPTIONS]
--h=<host_and_context> - a full URL to the JABAWS web server including context path e.g. http://10.31.10.159:8080/ws
--s=<ServiceName> - one of [MafftWS, MuscleWS, ClustalWS, ClustalOWS, TcoffeeWS, ProbconsWS, AAConWS, JronnWS, DisemblWS, GlobPlotWS, IUPredWS] -

-ACTIONS:
--i=<inputFile> - full path to fasta formatted sequence file, from which to align sequences
--parameters - lists parameters supported by web service
--presets - lists presets supported by web service
--limits - lists web services limits
-Please note that if input file is specified other actions are ignored -

- OPTIONS: (only for use with -i action):
--r=<presetName> - name of the preset to use
--o=<outputFile> - full path to the file where to write an alignment
--f=<parameterInputFile> - the name of the file with the list of parameters to use.
-Please note that -r and -f options cannot be used together. Alignment is done with either preset or a parameters from the file, but not both!
-

Align sequences from input.fasta file using Mafft web service with default settings, print alignment in Clustal format to console.

-

java -jar jabaws-min-client.jar -h=http://myhost.compbio.ac.uk:8080/jabaws -s=MafftWS -i=d:\input.fasta

-

Content of input.fasta file is show below (please note sequences has been trimmed for clarity)>Foobar
- MTADGPRELLQLRAAVRHRPQDFVAWL
- >Bar
- MGDTTAGEMAVQRGLALHQ
- QRHAEAAVLLQQASDAAPE
- >Foofriend
- MTADGPRELLQLRAAV

-

Align as in above example, but write output alignment in a file out.clustal, using parameters defined in prm.in file

-

java -jar jabaws-min-client.jar -h=http://myhost.compbio.ac.uk:8080/jabaws -s=MafftWS -i=d:\input.fasta -o=d:\out.clustal -f=prm.in

-

The content of the prm.in file is shown below --nofft
- --noscore
- --fastaparttree
- --retree=10
- --op=2.2

-

The format of the file is the same for all JABAWS web services. Parameters are specified in exactly the same way as for native executables - alignment programs like Mafft etc. So parameters which you can use with command line version of an alignment program can be used with JABAWS. Most of the settings controlling alignment process are supported, but because any output has to be handled by JABAWS, settings controlling output are not allowed to be changed. For a list of parameters supported by a web service see the next example. In prm.in parameters are separated by the new line, and name of the parameter is separated from its value with an equals sign. This format is constant no matter which JABAWS web service is used.
- java -jar jabaws-min-client.jar -h=http://myhost.compbio.ac.uk:8080/jabaws -s=MafftWS -parameters

-

The same client can be used to access JABAWS on different hosts. Just point the client to the host you want to use by changing the value of -h key. For example you used -h=http://myhost.compbio.ac.uk:8080/jabaws server, now you want to use another server to -h=http://mylabserver.myuni.edu. This comes handy if your favorite server is off and you need to do the job yesterday.

-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS): Manual + + + + + + + +
+ + + + + +
+ + + + +
+

JABAWS MANUAL

+ +

JABAWS Command Line Client Usage

+

+The command line client comes as a part of client package which you are welcome to download. +The command line client can be used to align sequences using any of JABAWS supported web services. The client is OS independent and supports most of +the functions which can be accessed programmatically via JABAWS API. Using this client you could align sequences +using presets or custom parameters, please see examples of this below. Here is the list of options supported by the command line client. +

+Usage:
java -jar <path_to_jar_file> -h=host_and_context -s=serviceName ACTION [OPTIONS]
+-h=<host_and_context> - a full URL to the JABAWS web server including context path e.g. http://10.31.10.159:8080/ws
+-s=<ServiceName> - one of [MafftWS, MuscleWS, ClustalWS, ClustalOWS, TcoffeeWS, ProbconsWS, AAConWS, JronnWS, DisemblWS, GlobPlotWS, IUPredWS] +

+ACTIONS:
+-i=<inputFile> - full path to fasta formatted sequence file, from which to align sequences
+-parameters - lists parameters supported by web service
+-presets - lists presets supported by web service
+-limits - lists web services limits
+Please note that if input file is specified other actions are ignored +

+ OPTIONS: (only for use with -i action):
+-r=<presetName> - name of the preset to use
+-o=<outputFile> - full path to the file where to write an alignment
+-f=<parameterInputFile> - the name of the file with the list of parameters to use.
+Please note that -r and -f options cannot be used together. Alignment is done with either preset or a parameters from the file, but not both!
+

Align sequences from input.fasta file using Mafft web service with default settings, print alignment in Clustal format to console.

+

java -jar jabaws-min-client.jar -h=http://myhost.compbio.ac.uk:8080/jabaws -s=MafftWS -i=d:\input.fasta

+

Content of input.fasta file is show below (please note sequences has been trimmed for clarity)>Foobar
+ MTADGPRELLQLRAAVRHRPQDFVAWL
+ >Bar
+ MGDTTAGEMAVQRGLALHQ
+ QRHAEAAVLLQQASDAAPE
+ >Foofriend
+ MTADGPRELLQLRAAV

+

Align as in above example, but write output alignment in a file out.clustal, using parameters defined in prm.in file

+

java -jar jabaws-min-client.jar -h=http://myhost.compbio.ac.uk:8080/jabaws -s=MafftWS -i=d:\input.fasta -o=d:\out.clustal -f=prm.in

+

The content of the prm.in file is shown below --nofft
+ --noscore
+ --fastaparttree
+ --retree=10
+ --op=2.2

+

The format of the file is the same for all JABAWS web services. Parameters are specified in exactly the same way as for native executables - alignment programs like Mafft etc. So parameters which you can use with command line version of an alignment program can be used with JABAWS. Most of the settings controlling alignment process are supported, but because any output has to be handled by JABAWS, settings controlling output are not allowed to be changed. For a list of parameters supported by a web service see the next example. In prm.in parameters are separated by the new line, and name of the parameter is separated from its value with an equals sign. This format is constant no matter which JABAWS web service is used.
+ java -jar jabaws-min-client.jar -h=http://myhost.compbio.ac.uk:8080/jabaws -s=MafftWS -parameters

+

The same client can be used to access JABAWS on different hosts. Just point the client to the host you want to use by changing the value of -h key. For example you used -h=http://myhost.compbio.ac.uk:8080/jabaws server, now you want to use another server to -h=http://mylabserver.myuni.edu. This comes handy if your favorite server is off and you need to do the job yesterday.

+
+ +
+
+ + + + + + + diff --git a/website/man_configuration.html b/website/v_2_1_0/man_configuration.html similarity index 98% rename from website/man_configuration.html rename to website/v_2_1_0/man_configuration.html index 6070e76..e71aa99 100644 --- a/website/man_configuration.html +++ b/website/v_2_1_0/man_configuration.html @@ -1,475 +1,475 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS): Manual - - - - - - - -
- - - - - -
- - - - -
-

JABAWS MANUAL

- -

JABAWS Server Configuration

- -

JABAWS Configuration

-

There are three parts of the system you can configure. The local -and the cluster engines, and the paths to the individual executables for -each engine. These settings are stored in configuration files -within the web application directory (for an overview, then take a -look at the war file content table).

-

Initially, JABAWS is configured with only the local engine - enabled, with job output written to directory called "jobsout" - within the web application itself. This means that JABAWS will work - out of the box, but may not be suitable for serving a whole lab or - a university.

-

Local Engine Configuration

- -

The Local execution engine configuration is defined in the -properties file conf/Engine.local.properties. The supported -configuration settings are:
- engine.local.enable=true - # -enable or disable local engine, valid values true | false
- local.tmp.directory=D:\\clusterengine\\testoutput -- a directory to use for temporary files storage, optional, -defaults to java temporary directory
- engine.local.thread.number=4 - -Number of threads for tasks execution (valid values between 1 and -2x cpu. Where x is a number of cores available in the system). -Optional defaults to the number of cores for core number <=4 and -number of cores-1 for greater core numbers.

- -

If the local engine going to be heavily loaded (which is often the case if you do not have a cluster) it is a good idea to increase -the amount of memory available for the web application server. If -you are using Apache-Tomcat, then you can define its memory -settings in the JAVA_OPTS environment variable. To specify which -JVM to use for Apache-Tomcat, put the full path to the JRE -installation in the JAVA_HOME environment variable. (We would -recommend using Sun Java Virtual Machine (JVM) in preference to -Open JDK). Below is an example of code which can be added to <tomcat_dir>/bin/setenv.sh script -to define which JVM to use and a memory settings for Tomcat server. -Tomcat server startup script (catalina.sh) will execute setenv.sh on each server start -automatically.
- export -JAVA_HOME=/homes/ws-dev2/jdk1.6.0_17/
- export JAVA_OPTS="-server -Xincgc -Xms512m -Xmx1024m"

- -

Cluster Engine Configuration

- -

Supported configuration settings:
- engine.cluster.enable=true - # -enable or disable local engine true | false, defaults to -false
- cluster.tmp.directory=/homes/clustengine/testoutput- -a directory to use for temporary files storage. The value must be -an absolute path to the temporary directory. This is required. The value -must be different from what is defined for local engine. This -directory must be accessible from all cluster nodes.
- For the cluster engine to work, the SGE_ROOT and LD_LIBRARY_PATH -environment variables have to be defined. They tell the cluster -engine where to find DRMAA libraries. These variables -should be defined when the web application server starts up, e.g.

- -

SGE_ROOT=/gridware/sge
- LD_LIBRARY_PATH=/gridware/sge/lib/lx24-amd64

- -

Finally, do not forget to configure executables for the cluster -execution, they may be the same as for the local execution but may -be different. Please refer to the executable configuration section -for further details.

- -

Executable Configuration

- -

All the executable programs -are configured in conf/Executable.properties file. Each executable -is configured with a number of options. They are: local.X.bin.windows=<path to executable under windows -system, optional>
- local.X.bin=<path to the executable under non-windows system, -optional>
- cluster.X.bin=<path to the executable on the cluster, all -cluster nodes must see it, optional>
- X.bin.env=<semicolon separated list of environment variables -for executable, use hash symbol as name value separator, -optional>
- X.--aamatrix.path=<path to the directory containing -substitution matrices, optional>
- X.presets.file=<path to the preset configuration file, optional ->
- X.parameters.file=<path to the parameters configuration file, -optional>
- X.limits.file=<path to the limits configuration file, -optional>
- X.cluster.settings=<list of the cluster specific options, -optional>

- -

Where X is either clustal, muscle, mafft, probcons or tcoffee.

- -

Default JABAWS configuration includes path to local executables -to be run by the local engine only, all cluster related settings -are commented out, but they are there for you as examples. Cluster -engine is disabled by default. To configure executable for cluster -execution uncomment the X.cluster settings and change them -appropriately.

-

- By default limits are set well in excess of what you may want to offer to the users outside your lab, - to make sure that the tasks are never rejected. The default limit is 100000 sequences of 100000 - letters on average for all of the JABA web services. You can adjust the limits according to your - needs by editing conf/settings/<X>Limit.xml files.
- After you have completed the editing your configuration may look like - this:local.mafft.bin.windows=
- local.mafft.bin=binaries/mafft
- cluster.mafft.bin=/homes/cengine/mafft
- mafft.bin.env=MAFFT_BINARIES#/homes/cengine/mafft;FASTA_4_MAFFT#/bin/fasta34;
- mafft.--aamatrix.path=binaries/matrices
- mafft.presets.file=conf/settings/MafftPresets.xml
- mafft.parameters.file=conf/settings/MafftParameters.xml
- mafft.limits.file=conf/settings/MafftLimits.xml
- mafft.cluster.settings=-q bigmem.q -l h_cpu=24:00:00 -l - h_vmem=6000M -l ram=6000M

-

Please not that relative paths must only be specified for the -files that reside inside web application directory, all other paths -must be supplied as absolute!

- -

-Furthermore, you should avoid using environment variables within the paths or options - since -these will not be evaluated correctly. Instead, please explicitly specify the absolute path -to anything normally evaluated from an environment variable at execution time. -

- -

If you are using JABAWS to submit jobs to the cluster (with -cluster engine enabled), executables must be available from all -cluster nodes the task can be sent to, also paths to the -executables on the cluster e.g. cluster.<exec_name>.bin must be -absolute.

- -

Executables can be located anywhere in your system, they do not -have to reside on the server as long as the web application server -can access and execute them.

- -

Cluster settings are treated as a black box, the system will -just pass whatever is specified in this line directly to the -cluster submission library. This is how DRMAA itself treats this -settings. More exactly DRMAA JobTemplate.setNativeSpecification() function will be called.

-

For further details and examples of configuration please refer to the Executable.properties file supplied with JABAWS.

-

Defining Environment Variables for -Executables

- -

Environment variables can be defined in property x.bin.env Where x is -one of five executables supported by JABAWS. Several environment -variables can be specified in the same line. For example.
- mafft.bin.env=MAFFT_BINARIES#/homes/cengine/mafft;FASTA_4_MAFFT#/bin/fasta34;

- -

The example above defines two environment variables with names -MAFFT-BINARIES and FASTA_4_MAFFT and values /homes/cengine/mafft -and /bin/fasta34 respectively. Semicolon is used as a separator -between different environment variables whereas hash is used as a -separator for name and value of the variable.

- -

Configure JABAWS to Work -with Mafft

- -

If you use default configuration you do not need to read any -further. The default configuration will work for you without any -changes, however, if you want to install Mafft yourself then there -is a couple of more steps to do.

- -

Mafft executable needs to know the location of other files -supplied with Mafft. In addition some Mafft functions depends on -the fasta executable, which is not supplied with Mafft, but is a -separate package. Mafft needs to know the location of fasta34 -executable.

- -

To let Mafft know where the other files from its package are, -change the value of MAFFT-BINARIES environment variables. To let -Mafft know where is the fasta34 executable set the value of -FASTA_4_MAFFT environment variable to point to a location of -fasta34 program. The latter can be added to the PATH variable -instead. If you are using executables supplied with JABAWS, the -path to Mafft binaries would be like <relative path to web application -directory>/binaries/src/mafft/binaries and the path to -fasta34 binary would be <relative path -to web application -directory>/binaries/src/fasta34/fasta34. You can specify -the location of Mafft binaries as well as fasta34 program elsewhere -by providing an absolute path to them. All these settings are -defined in conf/Executable.properties file.

-

Limiting the size of the job accepted by JABAWS

-

-JABAWS can be configured to reject excessively large tasks. This is useful if you operate JABAWS service -for many users. By defining a maximum allowed task size you can provide an even service for all users and -prevents waste of resources on the tasks too large to complete successfully. You can define the maximum -number of sequences and the maximum average sequence length that JABAWS accepts for each JABA Web Service -independently. Furthermore, you can define different limits for different presets of the same web service. -
-By default limits are disabled. You can enable them by editing conf/Executable.properties -file. You can adjust the limits according to your needs by editing conf/settings/<X>Limit.xml -files.

- -

Using a different version of the alignment program with JABAWS

-

- JABAWS is supplied with binaries and source code of the executables related to the version it supports. So normally you - would not need to install your own executables. However, if you have a different version of an executable - (e.g. an alignment program) which you prefer, you could use it as long as it supports all the functions - JABAWS executable require. This could be the case with more recent executable. If the options supported - by your chosen executable is different from the standard JABAWS executable, then you need to edit - ExecutableNameParamaters.xml  configuration file. -

- -

Load balancing

-

- If your cluster is busy and has significant waiting times, you can achieve a faster response by allowing - the server machine to calculate small tasks and then reserve the cluster for bigger jobs. This works - especially well if your server is a powerful machine with many CPUs. To do this you need to enable and - configure both the cluster and the local engines. Once this is done decide on the maximum size of a task - to be run on the server locally. Then, edit - "# LocalEngineExecutionLimit #" preset - in <ServiceName>Limits.xml file accordingly. JABAWS server then - will balance the load according to the following rule: If the task size is smaller than the maximum task - size for local engine, and the local engine has idle threads, then it calculates task locally otherwise it submit - the task to the cluster. -

- -

Testing JABA Web Services

-

- Access <your_JABAWS_server_URL>/ServiceStatus to test all web services. - Each time you access this URL, all services are tested. - - For production configuration we recommend prohibiting requests to this URL for non - authenticated users to prevent excessive load on the server. -

-

Alternatively, you can use a command line client (part of the client only - package) to test your JABAWS installation as described here. If you downloaded a JABAWS - server package, you can use <your_jaba_context_name>/WEB-INF/lib/jaba-client.jar to test JABAWS installation as described here. If you downloaded the source - code, then you could run a number of test suites defined in the - build.xml Apache Ant file.

-

JABAWS requests logging

-

Enable Tomcat log valve. To do this uncomment the following section of <tomcat_root>/conf/server.xml configuration file.

-

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
- prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>

-

The following information will be logged:

- - - - - - - - - - - - - - - -
Remote IPDateMethod server_URL protocol HTTP status Response size in bytes
10.31.11.159[10/Feb/2010:16:51:32 +0000]"POST /jws2/MafftWS HTTP/1.1"2002067
-

Which can be processed in various programs for log analysis , such as WebAlizer, Analog, AWStats.

-

JABAWS internal logging

-

JABAWS can be configured to log what it is doing. This comes in - handy if you would like to see who is using your web services or - need to chase some problems. JABAWS uses log4j to do the logging, - the example of log4j configuration is bundled with JABAWS war file. - You will find it in the /WEB-INF/classes/log4j.properties file. All the - lines in this file are commented out. The reason why the logging is - disabled by default it simple, log4j has to know the exact - location of where the log files are stored. This is not known up - until the deployment time. To enable the logging you need to - define logDir property in the log4j.properties and uncomment section of - the file which corresponds to your need. More information is given - in the log4j.properties file - itself. Restart the Tomcat or the JABAWS web application to apply - the settings.

-

After you have done this, assuming that you did not change the - log4j.properties file yourself, you should see the application log - file called activity.log. The - amount of information logged can be adjusted using different - logging levels, it is reduced in the following order of log levels - TRACE, DEBUG, INFO, WARN, ERROR, FATAL.

-

If you would like to know who is using your services, you might - want to enable Tomcat request - logging.

-

JABAWS War File Content

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
DirectoryContent description
conf/contains configuration files such as Executable.properties, - Engine.local.properties, Engine.cluster.properties
conf/settingsContains individual executable description files. In particular - XXXParameters.xml, XXXPresets.xml, XXXLimits.xml where XXX is the - name of the executable
ExecutionStatisticsThe database for storing the execution statistics
statpagesWeb pages for usage statistics visialization and webservices status queries
jobsout/Contains directories generated when running an individual executable. E.g. input and output files and some other task - related data (optional)
binaries/Directory contains native executables - programs, - windows binaries (optional)
binaries/srcContains source of native executables and Linux i386 - binaries
binaries/windowsContains binaries for MS Windows operating system
binaries/matricesSubstitution matrices -
WEB-INFWeb application descriptor
WEB-INF/libWeb application libraries
WEB-INF/classeslog4j.properties - log configuration file (optional)
Help Pages
/help pages, index.html is the starting page
dm_javadocjavadoc for JABAWS client (the link is available from How To - pages)
prog_docsdocumentation for programs that JABAWS uses
imagesimages referenced by html pages
-

JABAWS and Google Analytics

-

JABAWS reports web services usage to our group Google Analytics (GA) account. JABAWS usage statistics are collected for funding and reporting purposes, and no private information is collected. The data sent by JABAWS is as follows:

-
    -
  1. The IP address of the JABAWS server machine (the server IP can anonymized see conf/GA.properties config file)
  2. -
  3. The name of the web service that was called.
  4. -
  5. A few details of the system such as JABAWS version, java version, user language, color depth, screen - resolution and character encoding.
  6. -
-

Google Analytics can be disabled or adjusted by removing/editing conf/GA.properties Google Analytics (GA) settings file. We would appreciate it greatly if you could leave it on!

-

All calls to GA are very lightweight, completed asynchronously, create very little overhead and do not influence the server response time or performance.

-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS): Manual + + + + + + + +
+ + + + + +
+ + + + +
+

JABAWS MANUAL

+ +

JABAWS Server Configuration

+ +

JABAWS Configuration

+

There are three parts of the system you can configure. The local +and the cluster engines, and the paths to the individual executables for +each engine. These settings are stored in configuration files +within the web application directory (for an overview, then take a +look at the war file content table).

+

Initially, JABAWS is configured with only the local engine + enabled, with job output written to directory called "jobsout" + within the web application itself. This means that JABAWS will work + out of the box, but may not be suitable for serving a whole lab or + a university.

+

Local Engine Configuration

+ +

The Local execution engine configuration is defined in the +properties file conf/Engine.local.properties. The supported +configuration settings are:
+ engine.local.enable=true - # +enable or disable local engine, valid values true | false
+ local.tmp.directory=D:\\clusterengine\\testoutput +- a directory to use for temporary files storage, optional, +defaults to java temporary directory
+ engine.local.thread.number=4 - +Number of threads for tasks execution (valid values between 1 and +2x cpu. Where x is a number of cores available in the system). +Optional defaults to the number of cores for core number <=4 and +number of cores-1 for greater core numbers.

+ +

If the local engine going to be heavily loaded (which is often the case if you do not have a cluster) it is a good idea to increase +the amount of memory available for the web application server. If +you are using Apache-Tomcat, then you can define its memory +settings in the JAVA_OPTS environment variable. To specify which +JVM to use for Apache-Tomcat, put the full path to the JRE +installation in the JAVA_HOME environment variable. (We would +recommend using Sun Java Virtual Machine (JVM) in preference to +Open JDK). Below is an example of code which can be added to <tomcat_dir>/bin/setenv.sh script +to define which JVM to use and a memory settings for Tomcat server. +Tomcat server startup script (catalina.sh) will execute setenv.sh on each server start +automatically.
+ export +JAVA_HOME=/homes/ws-dev2/jdk1.6.0_17/
+ export JAVA_OPTS="-server -Xincgc -Xms512m -Xmx1024m"

+ +

Cluster Engine Configuration

+ +

Supported configuration settings:
+ engine.cluster.enable=true - # +enable or disable local engine true | false, defaults to +false
+ cluster.tmp.directory=/homes/clustengine/testoutput- +a directory to use for temporary files storage. The value must be +an absolute path to the temporary directory. This is required. The value +must be different from what is defined for local engine. This +directory must be accessible from all cluster nodes.
+ For the cluster engine to work, the SGE_ROOT and LD_LIBRARY_PATH +environment variables have to be defined. They tell the cluster +engine where to find DRMAA libraries. These variables +should be defined when the web application server starts up, e.g.

+ +

SGE_ROOT=/gridware/sge
+ LD_LIBRARY_PATH=/gridware/sge/lib/lx24-amd64

+ +

Finally, do not forget to configure executables for the cluster +execution, they may be the same as for the local execution but may +be different. Please refer to the executable configuration section +for further details.

+ +

Executable Configuration

+ +

All the executable programs +are configured in conf/Executable.properties file. Each executable +is configured with a number of options. They are: local.X.bin.windows=<path to executable under windows +system, optional>
+ local.X.bin=<path to the executable under non-windows system, +optional>
+ cluster.X.bin=<path to the executable on the cluster, all +cluster nodes must see it, optional>
+ X.bin.env=<semicolon separated list of environment variables +for executable, use hash symbol as name value separator, +optional>
+ X.--aamatrix.path=<path to the directory containing +substitution matrices, optional>
+ X.presets.file=<path to the preset configuration file, optional +>
+ X.parameters.file=<path to the parameters configuration file, +optional>
+ X.limits.file=<path to the limits configuration file, +optional>
+ X.cluster.settings=<list of the cluster specific options, +optional>

+ +

Where X is either clustal, muscle, mafft, probcons or tcoffee.

+ +

Default JABAWS configuration includes path to local executables +to be run by the local engine only, all cluster related settings +are commented out, but they are there for you as examples. Cluster +engine is disabled by default. To configure executable for cluster +execution uncomment the X.cluster settings and change them +appropriately.

+

+ By default limits are set well in excess of what you may want to offer to the users outside your lab, + to make sure that the tasks are never rejected. The default limit is 100000 sequences of 100000 + letters on average for all of the JABA web services. You can adjust the limits according to your + needs by editing conf/settings/<X>Limit.xml files.
+ After you have completed the editing your configuration may look like + this:local.mafft.bin.windows=
+ local.mafft.bin=binaries/mafft
+ cluster.mafft.bin=/homes/cengine/mafft
+ mafft.bin.env=MAFFT_BINARIES#/homes/cengine/mafft;FASTA_4_MAFFT#/bin/fasta34;
+ mafft.--aamatrix.path=binaries/matrices
+ mafft.presets.file=conf/settings/MafftPresets.xml
+ mafft.parameters.file=conf/settings/MafftParameters.xml
+ mafft.limits.file=conf/settings/MafftLimits.xml
+ mafft.cluster.settings=-q bigmem.q -l h_cpu=24:00:00 -l + h_vmem=6000M -l ram=6000M

+

Please not that relative paths must only be specified for the +files that reside inside web application directory, all other paths +must be supplied as absolute!

+ +

+Furthermore, you should avoid using environment variables within the paths or options - since +these will not be evaluated correctly. Instead, please explicitly specify the absolute path +to anything normally evaluated from an environment variable at execution time. +

+ +

If you are using JABAWS to submit jobs to the cluster (with +cluster engine enabled), executables must be available from all +cluster nodes the task can be sent to, also paths to the +executables on the cluster e.g. cluster.<exec_name>.bin must be +absolute.

+ +

Executables can be located anywhere in your system, they do not +have to reside on the server as long as the web application server +can access and execute them.

+ +

Cluster settings are treated as a black box, the system will +just pass whatever is specified in this line directly to the +cluster submission library. This is how DRMAA itself treats this +settings. More exactly DRMAA JobTemplate.setNativeSpecification() function will be called.

+

For further details and examples of configuration please refer to the Executable.properties file supplied with JABAWS.

+

Defining Environment Variables for +Executables

+ +

Environment variables can be defined in property x.bin.env Where x is +one of five executables supported by JABAWS. Several environment +variables can be specified in the same line. For example.
+ mafft.bin.env=MAFFT_BINARIES#/homes/cengine/mafft;FASTA_4_MAFFT#/bin/fasta34;

+ +

The example above defines two environment variables with names +MAFFT-BINARIES and FASTA_4_MAFFT and values /homes/cengine/mafft +and /bin/fasta34 respectively. Semicolon is used as a separator +between different environment variables whereas hash is used as a +separator for name and value of the variable.

+ +

Configure JABAWS to Work +with Mafft

+ +

If you use default configuration you do not need to read any +further. The default configuration will work for you without any +changes, however, if you want to install Mafft yourself then there +is a couple of more steps to do.

+ +

Mafft executable needs to know the location of other files +supplied with Mafft. In addition some Mafft functions depends on +the fasta executable, which is not supplied with Mafft, but is a +separate package. Mafft needs to know the location of fasta34 +executable.

+ +

To let Mafft know where the other files from its package are, +change the value of MAFFT-BINARIES environment variables. To let +Mafft know where is the fasta34 executable set the value of +FASTA_4_MAFFT environment variable to point to a location of +fasta34 program. The latter can be added to the PATH variable +instead. If you are using executables supplied with JABAWS, the +path to Mafft binaries would be like <relative path to web application +directory>/binaries/src/mafft/binaries and the path to +fasta34 binary would be <relative path +to web application +directory>/binaries/src/fasta34/fasta34. You can specify +the location of Mafft binaries as well as fasta34 program elsewhere +by providing an absolute path to them. All these settings are +defined in conf/Executable.properties file.

+

Limiting the size of the job accepted by JABAWS

+

+JABAWS can be configured to reject excessively large tasks. This is useful if you operate JABAWS service +for many users. By defining a maximum allowed task size you can provide an even service for all users and +prevents waste of resources on the tasks too large to complete successfully. You can define the maximum +number of sequences and the maximum average sequence length that JABAWS accepts for each JABA Web Service +independently. Furthermore, you can define different limits for different presets of the same web service. +
+By default limits are disabled. You can enable them by editing conf/Executable.properties +file. You can adjust the limits according to your needs by editing conf/settings/<X>Limit.xml +files.

+ +

Using a different version of the alignment program with JABAWS

+

+ JABAWS is supplied with binaries and source code of the executables related to the version it supports. So normally you + would not need to install your own executables. However, if you have a different version of an executable + (e.g. an alignment program) which you prefer, you could use it as long as it supports all the functions + JABAWS executable require. This could be the case with more recent executable. If the options supported + by your chosen executable is different from the standard JABAWS executable, then you need to edit + ExecutableNameParamaters.xml  configuration file. +

+ +

Load balancing

+

+ If your cluster is busy and has significant waiting times, you can achieve a faster response by allowing + the server machine to calculate small tasks and then reserve the cluster for bigger jobs. This works + especially well if your server is a powerful machine with many CPUs. To do this you need to enable and + configure both the cluster and the local engines. Once this is done decide on the maximum size of a task + to be run on the server locally. Then, edit + "# LocalEngineExecutionLimit #" preset + in <ServiceName>Limits.xml file accordingly. JABAWS server then + will balance the load according to the following rule: If the task size is smaller than the maximum task + size for local engine, and the local engine has idle threads, then it calculates task locally otherwise it submit + the task to the cluster. +

+ +

Testing JABA Web Services

+

+ Access <your_JABAWS_server_URL>/ServiceStatus to test all web services. + Each time you access this URL, all services are tested. + + For production configuration we recommend prohibiting requests to this URL for non + authenticated users to prevent excessive load on the server. +

+

Alternatively, you can use a command line client (part of the client only + package) to test your JABAWS installation as described here. If you downloaded a JABAWS + server package, you can use <your_jaba_context_name>/WEB-INF/lib/jaba-client.jar to test JABAWS installation as described here. If you downloaded the source + code, then you could run a number of test suites defined in the + build.xml Apache Ant file.

+

JABAWS requests logging

+

Enable Tomcat log valve. To do this uncomment the following section of <tomcat_root>/conf/server.xml configuration file.

+

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
+ prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>

+

The following information will be logged:

+ + + + + + + + + + + + + + + +
Remote IPDateMethod server_URL protocol HTTP status Response size in bytes
10.31.11.159[10/Feb/2010:16:51:32 +0000]"POST /jws2/MafftWS HTTP/1.1"2002067
+

Which can be processed in various programs for log analysis , such as WebAlizer, Analog, AWStats.

+

JABAWS internal logging

+

JABAWS can be configured to log what it is doing. This comes in + handy if you would like to see who is using your web services or + need to chase some problems. JABAWS uses log4j to do the logging, + the example of log4j configuration is bundled with JABAWS war file. + You will find it in the /WEB-INF/classes/log4j.properties file. All the + lines in this file are commented out. The reason why the logging is + disabled by default it simple, log4j has to know the exact + location of where the log files are stored. This is not known up + until the deployment time. To enable the logging you need to + define logDir property in the log4j.properties and uncomment section of + the file which corresponds to your need. More information is given + in the log4j.properties file + itself. Restart the Tomcat or the JABAWS web application to apply + the settings.

+

After you have done this, assuming that you did not change the + log4j.properties file yourself, you should see the application log + file called activity.log. The + amount of information logged can be adjusted using different + logging levels, it is reduced in the following order of log levels + TRACE, DEBUG, INFO, WARN, ERROR, FATAL.

+

If you would like to know who is using your services, you might + want to enable Tomcat request + logging.

+

JABAWS War File Content

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DirectoryContent description
conf/contains configuration files such as Executable.properties, + Engine.local.properties, Engine.cluster.properties
conf/settingsContains individual executable description files. In particular + XXXParameters.xml, XXXPresets.xml, XXXLimits.xml where XXX is the + name of the executable
ExecutionStatisticsThe database for storing the execution statistics
statpagesWeb pages for usage statistics visialization and webservices status queries
jobsout/Contains directories generated when running an individual executable. E.g. input and output files and some other task + related data (optional)
binaries/Directory contains native executables - programs, + windows binaries (optional)
binaries/srcContains source of native executables and Linux i386 + binaries
binaries/windowsContains binaries for MS Windows operating system
binaries/matricesSubstitution matrices +
WEB-INFWeb application descriptor
WEB-INF/libWeb application libraries
WEB-INF/classeslog4j.properties - log configuration file (optional)
Help Pages
/help pages, index.html is the starting page
dm_javadocjavadoc for JABAWS client (the link is available from How To + pages)
prog_docsdocumentation for programs that JABAWS uses
imagesimages referenced by html pages
+

JABAWS and Google Analytics

+

JABAWS reports web services usage to our group Google Analytics (GA) account. JABAWS usage statistics are collected for funding and reporting purposes, and no private information is collected. The data sent by JABAWS is as follows:

+
    +
  1. The IP address of the JABAWS server machine (the server IP can anonymized see conf/GA.properties config file)
  2. +
  3. The name of the web service that was called.
  4. +
  5. A few details of the system such as JABAWS version, java version, user language, color depth, screen + resolution and character encoding.
  6. +
+

Google Analytics can be disabled or adjusted by removing/editing conf/GA.properties Google Analytics (GA) settings file. We would appreciate it greatly if you could leave it on!

+

All calls to GA are very lightweight, completed asynchronously, create very little overhead and do not influence the server response time or performance.

+
+ +
+
+ + + + + + + diff --git a/website/man_dev.html b/website/v_2_1_0/man_dev.html similarity index 98% rename from website/man_dev.html rename to website/v_2_1_0/man_dev.html index 35da5fd..01a60e8 100644 --- a/website/man_dev.html +++ b/website/v_2_1_0/man_dev.html @@ -1,430 +1,430 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS): Manual - - - - - - - -
- - - - - -
- - - - -
-

JABAWS MANUAL

- -

Using JABAWS From Your Program

- -

Web services functions overview

-

All JABA multiple sequence alignment web services comply to the same interface, thus the function described below are available from all the services.

-

Functions for initiating the alignment String id = align(List<FastaSequence> list)
- String id = customAlign(List<FastaSequence> sequenceList, List<Option> optionList)
- String id = presetAlign(List<FastaSequence> sequenceList, Preset preset)

-

Functions pertaining to job monitoring and control
- JobStatus status = getJobStatus(String id)
- Alignment al = getResult(String id)
- boolean cancelled = cancelJob(String id)
- ChunkHolder chunk = pullExecStatistics(String id, long marker)

-

Functions relating to service features discovery
- RunnerConfig rc = getRunnerOptions()
- Limit limit = getLimit(String name)
- LimitsManager lm = getLimits()
- PresetManager pm = getPresets()

-

Please refer to a data model javadoc for a detailed description of each methods.

-

Structure of the template command line client

- - - - - - - - - - - - - - - - - - - - - -
PackagesClasses and Interfaces
compbio.data.msa MsaWS the interface for all multiple sequence alignment web services
compbio.data.sequenceJABAWS data types
compbio.metadataJABAWS meta data types
compbio.ws.clientJABAWS command line client
-

Additional utility libraries that this client depend upon is the compbio-util-1.3.jar and compbio-annotation-1.0.jar.
- Please refer to a data model javadoc for a detailed description of each class and its methods.

- - -

Connecting to JABAWS

-

-For a complete working example of JABAWS command line client please see compbio.ws.client.Jws2Client class. JABAWS command line client -source code is available from the download page. Please note that for now all -the examples are in Java other languages will follow given a sufficient demand.

- -

-Download a binary JABAWS client. Add the client to the class path. The following code excerpt will connect your program to Clustal -web service deployed in the University of Dundee.

-

import java.net.URL;
- import javax.xml.namespace.QName;
- import javax.xml.ws.Service;
- ...............
- 1) String qualifiedName = "http://msa.data.compbio/01/01/2010/";
- 2) URL url = new URL("http://www.compbio.dundee.ac.uk/jabaws/ClustalWS?wsdl");
- 3) QName qname = new QName(, "ClustalWS");
- 4) Service serv = Service.create(url, qname);
- 5) MsaWS msaws = serv.getPort(new QName(qualifiedName, "ClustalWSPort"), - MsaWS.class); -

-

- Line 1 makes a qualified name for JABA web services.
- Line 2 constructs the URL to the web services WSDL.
- Line 3 makes a qualified name instance for Clustal JABA web service.
- Line 4 creates a service instance.
- Line 5 makes a connection to the server. -

-

- A more generic connection method would look like this -

-

import java.net.URL;
- import javax.xml.namespace.QName;
- import javax.xml.ws.Service;
- import compbio.ws.client.Services
- ..............
- String qualifiedServiceName = "http://msa.data.compbio/01/01/2010/";
- String host = "http://www.compbio.dundee.ac.uk/jabaws";
- // In real life the service name can come from args
- Services clustal = Services.ClustalWS;
- URL url = new URL(host + "/" + clustal.toString() + "?wsdl");
- QName qname = new QName(qualifiedServiceName, clustal.toString());
- Service serv = Service.create(url, qname);
- MsaWS msaws = serv.getPort(new QName(qualifiedServiceName, clustal
- + "Port"), MsaWS.class); -

-

- Where Services is enumeration of JABAWS web services. All JABAWS multiple sequence alignment methods confirm to - MsaWS specification, thus from the caller point of view all JABAWS web services can be represented by MsaWS - interface. The full documentation of MsaWS functions is available from the javadoc. -

- - -

Valid JABAWS service names and WSDL files

-

Multiple sequence alignment services

-
  • ClustalOWS (http://www.compbio.dundee.ac.uk/jabaws-dev/ClustalOWS?wsdl)
  • -
  • ClustalWS (http://www.compbio.dundee.ac.uk/jabaws-dev/ClustalWS?wsdl)
  • -
  • MuscleWS (http://www.compbio.dundee.ac.uk/jabaws-dev/MuscleWS?wsdl)
  • -
  • MafftWS (http://www.compbio.dundee.ac.uk/jabaws-dev/MafftWS?wsdl)
  • -
  • TcoffeeWS (http://www.compbio.dundee.ac.uk/jabaws-dev/TcoffeeWS?wsdl)
  • -
  • ProbconsWS (http://www.compbio.dundee.ac.uk/jabaws-dev/ProbconsWS?wsdl)
  • -
  • MSAprobsWS (http://www.compbio.dundee.ac.uk/jabaws-dev/MSAprobsWS?wsdl)
  • -
  • GLprobsWS (http://www.compbio.dundee.ac.uk/jabaws-dev/GLprobsWS?wsdl)
  • -
-

Protein disorder prediction services

-
    -
  • IUPredWS (http://www.compbio.dundee.ac.uk/jabaws-dev/IUPredWS?wsdl)
  • -
  • GlobPlotWS (http://www.compbio.dundee.ac.uk/jabaws-dev/GlobPlotWS?wsdl)
  • -
  • DisemblWS (http://www.compbio.dundee.ac.uk/jabaws-dev/DisemblWS?wsdl)
  • -
  • JronnWS (http://www.compbio.dundee.ac.uk/jabaws-dev/JronnWS?wsdl)
  • -
-

Amino acid conservation service

-
    -
  • AAConWS (http://www.compbio.dundee.ac.uk/jabaws-dev/AAConWS?wsdl)
  • -
-

Protein and RNA Secondary Structure Prediction

-
    -
  • JpredWS (http://www.compbio.dundee.ac.uk/jabaws-dev/JpredWS?wsdl)
  • -
  • RNAalifoldWS (http://www.compbio.dundee.ac.uk/jabaws-dev/RNAalifoldWS?wsdl)
  • -
-

-Please replace http://www.compbio.dundee.ac.uk/ with your JABAWS instance host name, and -jabaws with your JABAWS context name to access your local version of JABAWS web services. -For example http://localhost:8080/jabaws would be a valid URL for the default Apache-Tomcat -installation and jabaws.war file deployment.

- - -

Aligning sequences

-

-Given that msaws is web service proxy, created as described in "Connecting to JABAWS" -section, the actual alignment can be obtained as follows:

-

1) List<FastaSequence> fastalist = SequenceUtil.readFasta(new FileInputStream(file));
- 2) String jobId = msaws.align(fastalist);
- 3) Alignment alignment = msaws.getResult(jobId);

-

Line one loads FASTA sequence from the file.
- Line two submits them to web service represented by msaws proxy.
- Line three retrieves the alignment from a web service. This line will block the execution until the result is available. - Use this with caution. In general, you should make sure that the calculation has been completed before attempting - retrieving results. This is to avoid keeping the connection to the server on hold for a prolonged periods of time. - While this may be ok with your local server, our public server - (www.compbio.dundee.ac.uk/jabaws) will not let you hold the connection - for longer than 10 minutes. This is done to prevent excessive load on the server. The next section describes how to check - the status of the calculation.
- Methods and classes mentioned in the excerpt are available from the JABAWS client library.

-

Checking the status of the calculation

-

You may have noticed that there was no pause between submitting the job and retrieving of the results. This is -because getResult(jobId) method block the processing until the calculation is completed. -However, taking into account that the connection holds server resources, our public server -(www.compbio.dundee.ac.uk/jabaws) is configured to reset the -connection after 10 minutes of waiting. To work around the connection reset you are encouraged to check whether the -calculation has been completed before accessing the results. You can do it like this:

-

while (msaws.getJobStatus(jobId) != JobStatus.FINISHED) {
-     Thread.sleep(2000); // wait two seconds, then recheck the status
- }

-

Aligning with presets

-

1) PresetManager presetman = msaws.getPresets();
- 2) Preset preset = presetman.getPresetByName(presetName);
- 3) List<FastaSequence> fastalist = SequenceUtil.readFasta(new FileInputStream(file));
- 4) String jobId = msaws.presetAlign(fastalist, preset);
- 5) Alignment alignment = msaws.getResult(jobId);

-

Line one obtains the lists of presets supported by a web service.
- Line two return a particular Preset - by its name.
- Lines three to five are doing the same job as in the first aligning sequences example.

-

Aligning with custom parameters

-

1) RunnerConfig options = msaws.getRunnerOptions();
- 2) Argument matrix = options.getArgument("MATRIX");
- 3) matrix.setValue("PAM300");
- 4) Argument gapopenpenalty = options.getArgument("GAPOPEN");
- 5) gapopenpenalty.setValue("20");
- 6) List<Argument> arguments = new ArrayList<Argument>();
- 7) arguments.add(matrix); - arguments.add(gapopenpenalty);
- 8) List<FastaSequence> fastalist = SequenceUtil.readFasta(new FileInputStream(file));
- 9) String jobId = msaws.customAlign(fastalist, arguments);
- 10) Alignment alignment = msaws.getResult(jobId);

-

Line one obtains the RunnerConfig object that holds information on supported parameters and their values
- Line two retrieve a particular parameter from the holder by its name.
- Lines three sets a value to this parameter which will be used in the calculation.
- Line four and five do the same but for another parameter.
- Line 6 makes a List to hold the parameters.
- Line seven puts the parameters into that list.
- Line eight - and ten is the same as in previous examples.
- Line nine submit an alignment request with the sequences and the parameters.
- The names of all the parameters supported by a web service e.g. "PAM300" can be obtained - using options.getArguments() method. Further details on the methods - available from RunnerConfig object are available from the - javadoc.

-

Writing alignments to a file

-

There is a utility method in the client library that does exactly that.

-

Alignment alignment = align(...)
- FileOutputStream outStream = new FileOutputStream(file);
- ClustalAlignmentUtil.writeClustalAlignment(outStream, align);

-

A complete client example

-

-Finally, a complete example of the program that connects to JABAWS Clustal service and aligns sequences using -one of the Clustal web service presets. There is also a PDF version of -this example with syntax highlighted. The text comments are commented by block style comments e.g. /* comment */, -the alternatives given in the code are line commented // comment. You may want to remove line style comments to -test alternatives of the functions. All you need for this to work is a -JABAWS binary client. -Please make sure that the client is in the Java class path before running this example.

-
-import java.io.ByteArrayInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.net.URL;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-import javax.xml.ws.Service;
-
-import compbio.data.msa.MsaWS;
-import compbio.data.sequence.Alignment;
-import compbio.data.sequence.FastaSequence;
-import compbio.data.sequence.SequenceUtil;
-import compbio.metadata.JobSubmissionException;
-import compbio.metadata.LimitExceededException;
-import compbio.metadata.Preset;
-import compbio.metadata.PresetManager;
-import compbio.metadata.ResultNotAvailableException;
-import compbio.metadata.UnsupportedRuntimeException;
-import compbio.metadata.WrongParameterException;
-
-public class Example {
-
-	/*
-	 * Input sequences for alignment
-	 */
-	static final String input = ">Foo\r\n"
-			+ "MTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAVARLGR"
-			+ "VRWTQQRHAEAAVLLQQASDAAPEHPGIALWLGHALEDAGQAEAAAAAYTRAHQLLPEEPYITAQ"
-			+ "LLNWRRRLCDWRALDVLSAQVRAAVAQGVGAVEPFAFLSEDASAAEQLACARTRAQAIAASVRPL"
-			+ "APTRVRSKGPLRVGFVSNGFGAHPTGLLTVALFEALQRRQPDLQMHLFATSGDDGSTLRTRLAQA"
-			+ "STLHDVTALGHLATAKHIRHHGIDLLFDLRGWGGGGRPEVFALRPAPVQVNWLAYPGTSGAPWMD"
-			+ "YVLGDAFALPPALEPFYSEHVLRLQGAFQPSDTSRVVAEPPSRTQCGLPEQGVVLCCFNNSYKLN"
-			+ "PQSMARMLAVLREVPDSVLWLLSGPGEADARLRAFAHAQGVDAQRLVFMPKLPHPQYLARYRHAD"
-			+ "LFLDTHPYNAHTTASDALWTGCPVLTTPGETFAARVAGSLNHHLGLDEMNVADDAAFVAKAVALAS"
-			+ "DPAALTALHARVDVLRRESGVFEMDGFADDFGALLQALARRHGWLGI\r\n"
-			+ "\r\n"
-			+ ">Bar\r\n"
-			+ "MGDTTAGEMAVQRGLALHQQRHAEAAVLLQQASDAAPEHPGIALWLHALEDAGQAEAAAAYTRAH"
-			+ "QLLPEEPYITAQLLNAVAQGVGAVEPFAFLSEDASAAESVRPLAPTRVRSKGPLRVGFVSNGFGA"
-			+ "HPTGLLTVALFEALQRRQPDLQMHLFATSGDDGSTLRTRLAQASTLHDVTALGHLATAKHIRHHG"
-			+ "IDLLFDLRGWGGGGRPEVFALRPAPVQVNWLAYPGTSGAPWMDYVLGDAFALPPALEPFYSEHVL"
-			+ "RLQGAFQPSDTSRVVAEPPSRTQCGLPEQGVVLCCFNNSYKLNPQSMARMLAVLREVPDSVLWLL"
-			+ "SGPGEADARLRAFAHAQGVDAQRLVFMPKLPHPQYLARYRHADLFLDTHPYNAHTTASDALWTGC"
-			+ "PVLTTPGETFAARVAGSLNHHLGLDEMNVADDAAFVAKAVALASDPAALTALHARVDVLRRESGV"
-			+ "FEMDGFADDFGALLQALARRHGWLGI\r\n"
-			+ "\r\n"
-			+ ">Friends\r\n"
-			+ "MTADGPRELLQLRAAVRHRPQDVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAVARLGRV"
-			+ "RWTQQRHAEAAVLLQQASDAAPEHPGIALWLGHALEDHQLLPEEPYITAQLDVLSAQVRAAVAQG"
-			+ "VGAVEPFAFLSEDASAAEQLACARTRAQAIAASVRPLAPTRVRSKGPLRVGFVSNGFGAHPTGLL"
-			+ "TVALFEALQRRQPDLQMHLFATSGDDGSTLRTRLAQASTLHDVTALGHLATAKHIRHHGIDLLFD"
-			+ "LRGWGGGGRPEVFALRPAPVQVNWLAYPGTSGAPWMDYVLGDAFALPPALEPFYSEHVLRLQGAF"
-			+ "QPSDTSRVVAEPPSRTQCGLPEQGVVLCCFNNSYKLNPQSMARMLAVLREVPDSVLWLLSGPGEA"
-			+ "DARLRAFAHAQGVDAQRLVFMPKLPHPQYLARYRHADLFLDTHPYNAHTTASDALWTGCPVLTTP"
-			+ "GETFAARVAGSLNHHLGLDEMNVADDAAFVAKAVALASDPAALTALHARVDVLRRESI";
-
-	public static void main(String[] args) throws UnsupportedRuntimeException,
-			LimitExceededException, JobSubmissionException,
-			WrongParameterException, FileNotFoundException, IOException,
-			ResultNotAvailableException, InterruptedException {
-
-		String qualifiedServiceName = "http://msa.data.compbio/01/01/2010/";
-
-		/* Make a URL pointing to web service WSDL */
-		URL url = new URL("http://www.compbio.dundee.ac.uk/jabaws/ClustalWS?wsdl");
-
-		/*
-		 * If you are making a client that connects to different web services
-		 * you can use something like this:
-		 */
-		// URL url = new URL(host + "/" + Services.ClustalWS.toString() +
-		// "?wsdl");
-
-		QName qname = new QName(qualifiedServiceName, "ClustalWS");
-		Service serv = Service.create(url, qname);
-		/*
-		 * Multiple sequence alignment interface for Clustal web service
-		 * instance
-		 */
-		MsaWS msaws = serv.getPort(new QName(qualifiedServiceName, "ClustalWS"
-				+ "Port"), MsaWS.class);
-
-		/* Get the list of available presets */
-		PresetManager presetman = msaws.getPresets();
-
-		/* Get the Preset object by preset name */
-		Preset preset = presetman
-				.getPresetByName("Disable gap weighting (Speed-oriented)");
-
-		/*
-		 * Load sequences in FASTA format from the file You can use something
-		 * like new FileInputStream(<filename>) to load sequence from the file
-		 */
-		List<FastaSequence> fastalist = SequenceUtil
-				.readFasta(new ByteArrayInputStream(input.getBytes()));
-
-		/*
-		 * Submit loaded sequences for an alignment using preset. The job
-		 * identifier is returned by this method, you can retrieve the results
-		 * with it sometime later.
-		 */
-		String jobId = msaws.presetAlign(fastalist, preset);
-
-		/* This method will block for the duration of the calculation */
-		Alignment alignment = msaws.getResult(jobId);
-
-		/*
-		 * This is a better way of obtaining results, it does not involve
-		 * holding the connection open for the duration of the calculation,
-		 * Besides, as the University of Dundee public server will reset the
-		 * connection after 10 minutes of idling, this is the only way to obtain
-		 * the results of long running task from our public server.
-		 */
-		// while (msaws.getJobStatus(jobId) != JobStatus.FINISHED) {
-		// Thread.sleep(1000); // wait a second, then recheck the status
-		// }
-
-		/* Output the alignment to standard out */
-		System.out.println(alignment);
-
-		// Alternatively, you can record retrieved alignment into the file in
-		// ClustalW format
-
-		// ClustalAlignmentUtil.writeClustalAlignment(new FileOutputStream(
-		// "output.al"), alignment);
-
-	}
-}
-
-For a more detailed description of all available types and their functions please refer to the data model javadoc. -

Building web services artifacts

-

-JABAWS are the standard JAX-WS SOAP web services, which are WS-I -basic profile compatible. This means that you could use whatever tool your language has to work with web services. Below is how you can -generate portable artifacts to work with JABAWS from Java. However if programming in Java, we recommend using our client library as -it provides a handful of useful methods in addition to plain data types.

-

wsimport -keep http://www.compbio.dundee.ac.uk/jabaws/ClustalWS?wsdl

-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS): Manual + + + + + + + +
+ + + + + +
+ + + + +
+

JABAWS MANUAL

+ +

Using JABAWS From Your Program

+ +

Web services functions overview

+

All JABA multiple sequence alignment web services comply to the same interface, thus the function described below are available from all the services.

+

Functions for initiating the alignment String id = align(List<FastaSequence> list)
+ String id = customAlign(List<FastaSequence> sequenceList, List<Option> optionList)
+ String id = presetAlign(List<FastaSequence> sequenceList, Preset preset)

+

Functions pertaining to job monitoring and control
+ JobStatus status = getJobStatus(String id)
+ Alignment al = getResult(String id)
+ boolean cancelled = cancelJob(String id)
+ ChunkHolder chunk = pullExecStatistics(String id, long marker)

+

Functions relating to service features discovery
+ RunnerConfig rc = getRunnerOptions()
+ Limit limit = getLimit(String name)
+ LimitsManager lm = getLimits()
+ PresetManager pm = getPresets()

+

Please refer to a data model javadoc for a detailed description of each methods.

+

Structure of the template command line client

+ + + + + + + + + + + + + + + + + + + + + +
PackagesClasses and Interfaces
compbio.data.msa MsaWS the interface for all multiple sequence alignment web services
compbio.data.sequenceJABAWS data types
compbio.metadataJABAWS meta data types
compbio.ws.clientJABAWS command line client
+

Additional utility libraries that this client depend upon is the compbio-util-1.3.jar and compbio-annotation-1.0.jar.
+ Please refer to a data model javadoc for a detailed description of each class and its methods.

+ + +

Connecting to JABAWS

+

+For a complete working example of JABAWS command line client please see compbio.ws.client.Jws2Client class. JABAWS command line client +source code is available from the download page. Please note that for now all +the examples are in Java other languages will follow given a sufficient demand.

+ +

+Download a binary JABAWS client. Add the client to the class path. The following code excerpt will connect your program to Clustal +web service deployed in the University of Dundee.

+

import java.net.URL;
+ import javax.xml.namespace.QName;
+ import javax.xml.ws.Service;
+ ...............
+ 1) String qualifiedName = "http://msa.data.compbio/01/01/2010/";
+ 2) URL url = new URL("http://www.compbio.dundee.ac.uk/jabaws/ClustalWS?wsdl");
+ 3) QName qname = new QName(, "ClustalWS");
+ 4) Service serv = Service.create(url, qname);
+ 5) MsaWS msaws = serv.getPort(new QName(qualifiedName, "ClustalWSPort"), + MsaWS.class); +

+

+ Line 1 makes a qualified name for JABA web services.
+ Line 2 constructs the URL to the web services WSDL.
+ Line 3 makes a qualified name instance for Clustal JABA web service.
+ Line 4 creates a service instance.
+ Line 5 makes a connection to the server. +

+

+ A more generic connection method would look like this +

+

import java.net.URL;
+ import javax.xml.namespace.QName;
+ import javax.xml.ws.Service;
+ import compbio.ws.client.Services
+ ..............
+ String qualifiedServiceName = "http://msa.data.compbio/01/01/2010/";
+ String host = "http://www.compbio.dundee.ac.uk/jabaws";
+ // In real life the service name can come from args
+ Services clustal = Services.ClustalWS;
+ URL url = new URL(host + "/" + clustal.toString() + "?wsdl");
+ QName qname = new QName(qualifiedServiceName, clustal.toString());
+ Service serv = Service.create(url, qname);
+ MsaWS msaws = serv.getPort(new QName(qualifiedServiceName, clustal
+ + "Port"), MsaWS.class); +

+

+ Where Services is enumeration of JABAWS web services. All JABAWS multiple sequence alignment methods confirm to + MsaWS specification, thus from the caller point of view all JABAWS web services can be represented by MsaWS + interface. The full documentation of MsaWS functions is available from the javadoc. +

+ + +

Valid JABAWS service names and WSDL files

+

Multiple sequence alignment services

+
  • ClustalOWS (http://www.compbio.dundee.ac.uk/jabaws-dev/ClustalOWS?wsdl)
  • +
  • ClustalWS (http://www.compbio.dundee.ac.uk/jabaws-dev/ClustalWS?wsdl)
  • +
  • MuscleWS (http://www.compbio.dundee.ac.uk/jabaws-dev/MuscleWS?wsdl)
  • +
  • MafftWS (http://www.compbio.dundee.ac.uk/jabaws-dev/MafftWS?wsdl)
  • +
  • TcoffeeWS (http://www.compbio.dundee.ac.uk/jabaws-dev/TcoffeeWS?wsdl)
  • +
  • ProbconsWS (http://www.compbio.dundee.ac.uk/jabaws-dev/ProbconsWS?wsdl)
  • +
  • MSAprobsWS (http://www.compbio.dundee.ac.uk/jabaws-dev/MSAprobsWS?wsdl)
  • +
  • GLprobsWS (http://www.compbio.dundee.ac.uk/jabaws-dev/GLprobsWS?wsdl)
  • +
+

Protein disorder prediction services

+
    +
  • IUPredWS (http://www.compbio.dundee.ac.uk/jabaws-dev/IUPredWS?wsdl)
  • +
  • GlobPlotWS (http://www.compbio.dundee.ac.uk/jabaws-dev/GlobPlotWS?wsdl)
  • +
  • DisemblWS (http://www.compbio.dundee.ac.uk/jabaws-dev/DisemblWS?wsdl)
  • +
  • JronnWS (http://www.compbio.dundee.ac.uk/jabaws-dev/JronnWS?wsdl)
  • +
+

Amino acid conservation service

+
    +
  • AAConWS (http://www.compbio.dundee.ac.uk/jabaws-dev/AAConWS?wsdl)
  • +
+

Protein and RNA Secondary Structure Prediction

+
    +
  • JpredWS (http://www.compbio.dundee.ac.uk/jabaws-dev/JpredWS?wsdl)
  • +
  • RNAalifoldWS (http://www.compbio.dundee.ac.uk/jabaws-dev/RNAalifoldWS?wsdl)
  • +
+

+Please replace http://www.compbio.dundee.ac.uk/ with your JABAWS instance host name, and +jabaws with your JABAWS context name to access your local version of JABAWS web services. +For example http://localhost:8080/jabaws would be a valid URL for the default Apache-Tomcat +installation and jabaws.war file deployment.

+ + +

Aligning sequences

+

+Given that msaws is web service proxy, created as described in "Connecting to JABAWS" +section, the actual alignment can be obtained as follows:

+

1) List<FastaSequence> fastalist = SequenceUtil.readFasta(new FileInputStream(file));
+ 2) String jobId = msaws.align(fastalist);
+ 3) Alignment alignment = msaws.getResult(jobId);

+

Line one loads FASTA sequence from the file.
+ Line two submits them to web service represented by msaws proxy.
+ Line three retrieves the alignment from a web service. This line will block the execution until the result is available. + Use this with caution. In general, you should make sure that the calculation has been completed before attempting + retrieving results. This is to avoid keeping the connection to the server on hold for a prolonged periods of time. + While this may be ok with your local server, our public server + (www.compbio.dundee.ac.uk/jabaws) will not let you hold the connection + for longer than 10 minutes. This is done to prevent excessive load on the server. The next section describes how to check + the status of the calculation.
+ Methods and classes mentioned in the excerpt are available from the JABAWS client library.

+

Checking the status of the calculation

+

You may have noticed that there was no pause between submitting the job and retrieving of the results. This is +because getResult(jobId) method block the processing until the calculation is completed. +However, taking into account that the connection holds server resources, our public server +(www.compbio.dundee.ac.uk/jabaws) is configured to reset the +connection after 10 minutes of waiting. To work around the connection reset you are encouraged to check whether the +calculation has been completed before accessing the results. You can do it like this:

+

while (msaws.getJobStatus(jobId) != JobStatus.FINISHED) {
+     Thread.sleep(2000); // wait two seconds, then recheck the status
+ }

+

Aligning with presets

+

1) PresetManager presetman = msaws.getPresets();
+ 2) Preset preset = presetman.getPresetByName(presetName);
+ 3) List<FastaSequence> fastalist = SequenceUtil.readFasta(new FileInputStream(file));
+ 4) String jobId = msaws.presetAlign(fastalist, preset);
+ 5) Alignment alignment = msaws.getResult(jobId);

+

Line one obtains the lists of presets supported by a web service.
+ Line two return a particular Preset + by its name.
+ Lines three to five are doing the same job as in the first aligning sequences example.

+

Aligning with custom parameters

+

1) RunnerConfig options = msaws.getRunnerOptions();
+ 2) Argument matrix = options.getArgument("MATRIX");
+ 3) matrix.setValue("PAM300");
+ 4) Argument gapopenpenalty = options.getArgument("GAPOPEN");
+ 5) gapopenpenalty.setValue("20");
+ 6) List<Argument> arguments = new ArrayList<Argument>();
+ 7) arguments.add(matrix); + arguments.add(gapopenpenalty);
+ 8) List<FastaSequence> fastalist = SequenceUtil.readFasta(new FileInputStream(file));
+ 9) String jobId = msaws.customAlign(fastalist, arguments);
+ 10) Alignment alignment = msaws.getResult(jobId);

+

Line one obtains the RunnerConfig object that holds information on supported parameters and their values
+ Line two retrieve a particular parameter from the holder by its name.
+ Lines three sets a value to this parameter which will be used in the calculation.
+ Line four and five do the same but for another parameter.
+ Line 6 makes a List to hold the parameters.
+ Line seven puts the parameters into that list.
+ Line eight + and ten is the same as in previous examples.
+ Line nine submit an alignment request with the sequences and the parameters.
+ The names of all the parameters supported by a web service e.g. "PAM300" can be obtained + using options.getArguments() method. Further details on the methods + available from RunnerConfig object are available from the + javadoc.

+

Writing alignments to a file

+

There is a utility method in the client library that does exactly that.

+

Alignment alignment = align(...)
+ FileOutputStream outStream = new FileOutputStream(file);
+ ClustalAlignmentUtil.writeClustalAlignment(outStream, align);

+

A complete client example

+

+Finally, a complete example of the program that connects to JABAWS Clustal service and aligns sequences using +one of the Clustal web service presets. There is also a PDF version of +this example with syntax highlighted. The text comments are commented by block style comments e.g. /* comment */, +the alternatives given in the code are line commented // comment. You may want to remove line style comments to +test alternatives of the functions. All you need for this to work is a +JABAWS binary client. +Please make sure that the client is in the Java class path before running this example.

+
+import java.io.ByteArrayInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.net.URL;
+import java.util.List;
+
+import javax.xml.namespace.QName;
+import javax.xml.ws.Service;
+
+import compbio.data.msa.MsaWS;
+import compbio.data.sequence.Alignment;
+import compbio.data.sequence.FastaSequence;
+import compbio.data.sequence.SequenceUtil;
+import compbio.metadata.JobSubmissionException;
+import compbio.metadata.LimitExceededException;
+import compbio.metadata.Preset;
+import compbio.metadata.PresetManager;
+import compbio.metadata.ResultNotAvailableException;
+import compbio.metadata.UnsupportedRuntimeException;
+import compbio.metadata.WrongParameterException;
+
+public class Example {
+
+	/*
+	 * Input sequences for alignment
+	 */
+	static final String input = ">Foo\r\n"
+			+ "MTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAVARLGR"
+			+ "VRWTQQRHAEAAVLLQQASDAAPEHPGIALWLGHALEDAGQAEAAAAAYTRAHQLLPEEPYITAQ"
+			+ "LLNWRRRLCDWRALDVLSAQVRAAVAQGVGAVEPFAFLSEDASAAEQLACARTRAQAIAASVRPL"
+			+ "APTRVRSKGPLRVGFVSNGFGAHPTGLLTVALFEALQRRQPDLQMHLFATSGDDGSTLRTRLAQA"
+			+ "STLHDVTALGHLATAKHIRHHGIDLLFDLRGWGGGGRPEVFALRPAPVQVNWLAYPGTSGAPWMD"
+			+ "YVLGDAFALPPALEPFYSEHVLRLQGAFQPSDTSRVVAEPPSRTQCGLPEQGVVLCCFNNSYKLN"
+			+ "PQSMARMLAVLREVPDSVLWLLSGPGEADARLRAFAHAQGVDAQRLVFMPKLPHPQYLARYRHAD"
+			+ "LFLDTHPYNAHTTASDALWTGCPVLTTPGETFAARVAGSLNHHLGLDEMNVADDAAFVAKAVALAS"
+			+ "DPAALTALHARVDVLRRESGVFEMDGFADDFGALLQALARRHGWLGI\r\n"
+			+ "\r\n"
+			+ ">Bar\r\n"
+			+ "MGDTTAGEMAVQRGLALHQQRHAEAAVLLQQASDAAPEHPGIALWLHALEDAGQAEAAAAYTRAH"
+			+ "QLLPEEPYITAQLLNAVAQGVGAVEPFAFLSEDASAAESVRPLAPTRVRSKGPLRVGFVSNGFGA"
+			+ "HPTGLLTVALFEALQRRQPDLQMHLFATSGDDGSTLRTRLAQASTLHDVTALGHLATAKHIRHHG"
+			+ "IDLLFDLRGWGGGGRPEVFALRPAPVQVNWLAYPGTSGAPWMDYVLGDAFALPPALEPFYSEHVL"
+			+ "RLQGAFQPSDTSRVVAEPPSRTQCGLPEQGVVLCCFNNSYKLNPQSMARMLAVLREVPDSVLWLL"
+			+ "SGPGEADARLRAFAHAQGVDAQRLVFMPKLPHPQYLARYRHADLFLDTHPYNAHTTASDALWTGC"
+			+ "PVLTTPGETFAARVAGSLNHHLGLDEMNVADDAAFVAKAVALASDPAALTALHARVDVLRRESGV"
+			+ "FEMDGFADDFGALLQALARRHGWLGI\r\n"
+			+ "\r\n"
+			+ ">Friends\r\n"
+			+ "MTADGPRELLQLRAAVRHRPQDVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAVARLGRV"
+			+ "RWTQQRHAEAAVLLQQASDAAPEHPGIALWLGHALEDHQLLPEEPYITAQLDVLSAQVRAAVAQG"
+			+ "VGAVEPFAFLSEDASAAEQLACARTRAQAIAASVRPLAPTRVRSKGPLRVGFVSNGFGAHPTGLL"
+			+ "TVALFEALQRRQPDLQMHLFATSGDDGSTLRTRLAQASTLHDVTALGHLATAKHIRHHGIDLLFD"
+			+ "LRGWGGGGRPEVFALRPAPVQVNWLAYPGTSGAPWMDYVLGDAFALPPALEPFYSEHVLRLQGAF"
+			+ "QPSDTSRVVAEPPSRTQCGLPEQGVVLCCFNNSYKLNPQSMARMLAVLREVPDSVLWLLSGPGEA"
+			+ "DARLRAFAHAQGVDAQRLVFMPKLPHPQYLARYRHADLFLDTHPYNAHTTASDALWTGCPVLTTP"
+			+ "GETFAARVAGSLNHHLGLDEMNVADDAAFVAKAVALASDPAALTALHARVDVLRRESI";
+
+	public static void main(String[] args) throws UnsupportedRuntimeException,
+			LimitExceededException, JobSubmissionException,
+			WrongParameterException, FileNotFoundException, IOException,
+			ResultNotAvailableException, InterruptedException {
+
+		String qualifiedServiceName = "http://msa.data.compbio/01/01/2010/";
+
+		/* Make a URL pointing to web service WSDL */
+		URL url = new URL("http://www.compbio.dundee.ac.uk/jabaws/ClustalWS?wsdl");
+
+		/*
+		 * If you are making a client that connects to different web services
+		 * you can use something like this:
+		 */
+		// URL url = new URL(host + "/" + Services.ClustalWS.toString() +
+		// "?wsdl");
+
+		QName qname = new QName(qualifiedServiceName, "ClustalWS");
+		Service serv = Service.create(url, qname);
+		/*
+		 * Multiple sequence alignment interface for Clustal web service
+		 * instance
+		 */
+		MsaWS msaws = serv.getPort(new QName(qualifiedServiceName, "ClustalWS"
+				+ "Port"), MsaWS.class);
+
+		/* Get the list of available presets */
+		PresetManager presetman = msaws.getPresets();
+
+		/* Get the Preset object by preset name */
+		Preset preset = presetman
+				.getPresetByName("Disable gap weighting (Speed-oriented)");
+
+		/*
+		 * Load sequences in FASTA format from the file You can use something
+		 * like new FileInputStream(<filename>) to load sequence from the file
+		 */
+		List<FastaSequence> fastalist = SequenceUtil
+				.readFasta(new ByteArrayInputStream(input.getBytes()));
+
+		/*
+		 * Submit loaded sequences for an alignment using preset. The job
+		 * identifier is returned by this method, you can retrieve the results
+		 * with it sometime later.
+		 */
+		String jobId = msaws.presetAlign(fastalist, preset);
+
+		/* This method will block for the duration of the calculation */
+		Alignment alignment = msaws.getResult(jobId);
+
+		/*
+		 * This is a better way of obtaining results, it does not involve
+		 * holding the connection open for the duration of the calculation,
+		 * Besides, as the University of Dundee public server will reset the
+		 * connection after 10 minutes of idling, this is the only way to obtain
+		 * the results of long running task from our public server.
+		 */
+		// while (msaws.getJobStatus(jobId) != JobStatus.FINISHED) {
+		// Thread.sleep(1000); // wait a second, then recheck the status
+		// }
+
+		/* Output the alignment to standard out */
+		System.out.println(alignment);
+
+		// Alternatively, you can record retrieved alignment into the file in
+		// ClustalW format
+
+		// ClustalAlignmentUtil.writeClustalAlignment(new FileOutputStream(
+		// "output.al"), alignment);
+
+	}
+}
+
+For a more detailed description of all available types and their functions please refer to the data model javadoc. +

Building web services artifacts

+

+JABAWS are the standard JAX-WS SOAP web services, which are WS-I +basic profile compatible. This means that you could use whatever tool your language has to work with web services. Below is how you can +generate portable artifacts to work with JABAWS from Java. However if programming in Java, we recommend using our client library as +it provides a handful of useful methods in addition to plain data types.

+

wsimport -keep http://www.compbio.dundee.ac.uk/jabaws/ClustalWS?wsdl

+
+ +
+
+ + + + + + + diff --git a/website/man_server_dev.html b/website/v_2_1_0/man_server_dev.html similarity index 98% rename from website/man_server_dev.html rename to website/v_2_1_0/man_server_dev.html index 17e2cbb..42f3768 100644 --- a/website/man_server_dev.html +++ b/website/v_2_1_0/man_server_dev.html @@ -1,269 +1,269 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS): Manual - - - - - - - -
- - - - - -
- - - -
-

For JABAWS Developers

-

The JABAWS project

-

This page is for anyone who wants to add a new webservice into the JABAWS framework.

- - -

The API

-

Data model javadoc- read this if your are coding against JABA Web Services

-

Complete javadoc - for developers who want to use JABAWS framework and use Engines and Executables directly

-

The source code

-

Publicly available Git repository:http://source.jalview.org/gitweb/?p=jabaws.git;a=summary

-

Another publicly available JABAWS repository, containing the code for each JABAWS public release, is located at jabaws.googlecode.com

-

The repositories contain a complete JABAWS Eclipse project.

-

Of course if you want to make a modification to the source code you would need to generate distributives yourself. To do that, first generate JAX-WS artifacts using build-server task from wsbuild.xml ant script, then you could use build.xml tasks to generate any of the distributives you need.

-

Structure of the project

-
    -
  • binaries contains native executables e.g. clustalw
  • -
  • src contains sources of native executables
  • -
  • windows contains pre-compiled Windows binaries
  • -
  • compilebin.sh - the script to complile binaries
  • -
  • setexecflag.sh - the script to set executable flag for the binaries
  • -
  • conf contains JABAWS configuration files
  • -
  • ExecutionStatistics the database for storing collected execution statistics
  • -
  • jobsout a default folder for temporary job directories
  • -
  • statpages the web pages for execution statistics display
  • -
  • WEB-INF default
  • -
  • website contains the JABAWS web pages
  • -
  • archive contains JABAWS packages, the WAR and JAR files
  • - -
-

The code structure

-
    -
  • datamodel contains the JABAWS datamodel
  • -
  • engine contains the JABAWS engine - the code that abstract the execution environment and executes native binaries
  • -
  • runner contains the JABAWS runners - thin wrappers for native binaries
  • -
  • webservices contains the JABAWS SOAP web services
  • -
  • testsrc contains the JABAWS unit tests
  • -
-

Each source folder depends on the upper folders for compilation. For example, the datamodel is the top level folder so it has no other dependencies on other JABAWS code. The Engine level depends on the datamodel to compile etc. The web services folder is the bottom layer and depends on all the other source code.

-

So the JABAWS project is split into 4 layers. From bottom-up the first layer consists from the value classes used by all other layers of the hierarchy, in particular web services. So, to be able to use JABAWS one needs to have these classes. At the same time classes on this layer does not have any dependencies on the layers above.

-

The second layer contains code for execution of the wrappers, which are the abstraction describing native executables. JABAWS can execute tasks locally that is on the same machine as JVM and on the cluster. Thus currently code on this layer contain two engines. This layer depends on the layer underneath, the data model layer, but is completely independent from the code above.

-

The third layer consists of the wrappers for the native executables and classes to handle their configuration. It depends on the engines and the data model, but know nothing about the web services.

-

Finally, the upper layer contains the web services, that depend on all the layers below.

-

The layer isolation is archived though specially designed compilation task which is executed sequentially in several stages so that the first layer compiles before any other layers, second layer compiles after that and process continies before all the code is compiled. Any violation of the layer boundaries results in the compilation failure. Use Ant "Compile" or "Complile_with_debug" tasks to perform the staged compilation.

-

A client package contains only classes from data model layer and a simple web services client. Framework package is for anyone who want to use JABAWS framework for controlling native executables in local or cluster environments. Framework exclude the web services layer. Server package contains all the code.

- -

Running tests

-

-JABAWS uses TestNG framework for testing. The test results for the JABAWS package offered for download can be found at: -Test Results
-JABAWS uses TestNG for testing. There is a TestNG plugin available for Eclipse -which has functionality similar to JUnit. However, no plugins are necessary to run the test cases, as testng jar is supplied -with JABAWS together with an ant tasks to run the test cases.

-

The best way to ensure that JABAWS framework is completely functional on your system is to run all test cases. -Test cases tests all aspects of JABAWS functionality. Consequently, one need to have non windows operation system and support -of the cluster to be able to run all tests. If your system does not support cluster, then you could run all test excluding -those that depends on the cluster.

-

Several testing groups are supported:

-
    -
  • All tests (Test)
  • -
  • Cluster tests (Run_cluster_dependent_test)
  • -
  • Cluster independent tests ()
  • -
  • Windows only tests (All_cluster_independent_windows_only_tests)
  • -
  • Performance and stability tests (Long_tests)
  • -
  • Re-run failed tests (Rerun_failed_tests)
  • -
  • Run custom test (CustomTest)
  • -
-

To run the tests you need to download all sources from repository. Once you have done that, enter into the command line mode, change directory to the project directory and type: - ant -f build.xml <test group name>

-

Make sure you have Apache Ant - installed and path to ant executable is defined in your path environmental variable. - Replace test group name with the one of the names given in the list above to run required group of tests e.g for running cluster only tests - use the following - command: ant -f build.xml Run_cluster_dependent_test - If you work under Linux you could use a simple script from the root folder of repository called runtests.sh - This script simply contains a collection of the test commands described above and paths to java home directory and an ant executable, - which you can define once for your system and then reuse.

-

- A handy feature of TestNG is its ability to re-run failed tests. Failed test ant file is stored in - test-output/testng-failed.xml. and is used in the ant task called - Rerun_failed_tests. So re-running failed tests requires no more work than running any other test group and could be accomplished with the command: ant -f build.xml Rerun_failed_tests CustomTest runs the test defined in the project root directory file called temp-testng-customsuite.xml. This file is generated by TestNG plugin every time you run the test from Eclipse. Thus an easy way to run a test in a different environment is to run it from Eclipse first and then from ant using a custom test procedure.

-

For cluster execution make sure that the property LD_LIBRARY_PATH defined in build.xml points to cluster engine LD libraries directory in your local system.

- -

Preparing distributive's

-

There are a number of ant tasks aimed for preparing distributives for download. Currently a few types of JABAWS packages are offered:

-
    -
  1. Client only (contains classes required to access JABA Web Services)
  2. -
  3. Platform specific JABAWS (windows and other)
  4. -
  5. JABAWS without binaries
  6. -
  7. JABAWS framework
  8. -
-

Corresponding build task names are:

-
    -
  1. min-jaba-client
  2. -
  3. jaba-windows, jaba-complete
  4. -
  5. jaba-no-binaries
  6. -
  7. full-jaba-client
  8. -
-

The easiest way to build all distributives is to call build-all ant task. - There are more tasks defined in build.xml than described here. They are mostly self explanatory.

-

If you made any changes to the data model and would like to generate a complete JABAWS - distro make sure you have rebuilt jaxws artifact as described below.

-

Building web services artifacts

-

Server side artifacts should be rebuild whenever the data model, meta model or MSA interface were changed. - To do that run build-server task from wsbuild.xml ant build file. WSDL files will be generated in - webservices/compbio/ws/server/resource directory. It is not necessary to - edit them if any of the JABAWS clients are used. JABAWS are the standard JAX-WS web services, which are - WS-I basic profile compatible.

-

Rough guide - adding a new web service

-
    -
  1. -

    Add a new executable which you'd like to wrap as a JABAWS web service to the binaries folder. - If it has the source code and can be recompiled for different platforms include it under - binaries/src. Edit setexecutableflag.sh - and compilebin.sh scripts in binaries/src - accordingly.

    -
  2. -

    Make sure that all the dependencies of the software being installed are satisfied. - If there are other binaries they should be included as well. Keep the dependent - binaries in a subfolder for the main executable. Update - compilebin.sh and setexecflag.sh scripts accordingly.

    -
  3. -

    Make sure that the new executable does not have any hard links to its dependencies, e.g. is able to run from - any installation folder and does not contain any hard coded paths.

    -
  4. -

    Describe executable in conf/Exectuable.properties file. The lowercase name of the wrapper should be included - in the name of the property for example Clustal properties all include clustal as a part of the name e.g. local.clustalw.bin. - The same property for MAFFT will be called local.mafft.bin. For more help please refer to the Executable.properties file.

    -
  5. -

    Describe the executable supported parameters in the - <ExecutableName>Parameters.xml, presets in the - <ExecutableName>Presets.xml and the execution limits in the - <ExecutableName>Limit.xml. By convention these files are stored - in conf/settings. All of these are optional. If the executable - does not support parameters you do not have to mention the XXXParameter.xml file - in the Executable.properties file at all. The same is true for - Presets and Limits.

    -
  6. -

    Create a Java wrapper class for your executable. Create it within runner source directory. - Examples of other wrappers can be found in compbio.runner.msa or - in other compbio.runner.* packages. Wrapper should extend - SkeletalExecutable<T> and implement - PipedExecutable<T> - if you need to pass the input or collect the results from the standard in/out. Please see Mafft - code as example. Wrapper should expend SkeletalExecutable<T> - if input/output can be set as a parameter for an executable. Please see the ClustalW code as example.

    -
  7. -

    Create a testcase suit for your wrapper in testsrc and run the test cases.

    -
  8. -

    Create parser for the output files of your executable. Suggested location - compbio.data.sequence.SequenceUtil .

    -
  9. -

    Test the parser.

    -
  10. -

    Decide which web services interfaces your executable is going to match. For example - if the executable output can be represented as SequenceAnnotation then SequenceAnnotation - interface might be appropriate. For multiple sequence alignment an Msa interface should be used.

    -
  11. -

    If you find a web interface that matches your returning data type, then - implement a web service which confirms to it within a webservices source folder.

    -
  12. -

    Register web service in WEB-INF/web.xml - and WEB-INF/sun-jaxws.xml .

    -
  13. -

    Add generated wsdl to wsbuild.xml ant script to generate the stubs.

    -
  14. -

    Run build-server task in wsbuild file. Watch for errors. If the task fails that means - that JAXB cannot serialize some of your new data structures. Add appropriate annotations to your data types. - Also check that:

    -
      -
    • you do not have interfaces to serialize, since JAXB cannot serialize them
    • -
    • you have a default no args constructor (can be private if you do not need it)
    • -
    • JAXB cannot serialize Java Map class, use a custom data structure instead
    • -
    • Enum cannot be serialized as its abstract class (do not confuse with enum which is fine)
    • -
    • Fields serialization leaves a little more space for manoeuvre. - If you do this then you may accept
      and return interfaces, e.g. List, Map; abstract classes etc, from your methods -
    • -
    -

    If you have the data on the server side, but nothing is coming through to the - client, this is a JAXB serialization problem. They tend to be very silent and - thus hard to debug. Check your data structure can be serialized!

    -
  15. -

    Modify the client to work with your new web service. Update Services - enumeration to include new service and ensure that all the methods of this - enumeration take into account the new service. Update the client help text - (client_help.txt) and insert it into the Constraints class.

    -
  16. -

    Test the web service with the client.

    -
  17. -

    Test on the cluster.

    -
  18. -
-

 

-
- -
-
- - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS): Manual + + + + + + + +
+ + + + + +
+ + + +
+

For JABAWS Developers

+

The JABAWS project

+

This page is for anyone who wants to add a new webservice into the JABAWS framework.

+ + +

The API

+

Data model javadoc- read this if your are coding against JABA Web Services

+

Complete javadoc - for developers who want to use JABAWS framework and use Engines and Executables directly

+

The source code

+

Publicly available Git repository:http://source.jalview.org/gitweb/?p=jabaws.git;a=summary

+

Another publicly available JABAWS repository, containing the code for each JABAWS public release, is located at jabaws.googlecode.com

+

The repositories contain a complete JABAWS Eclipse project.

+

Of course if you want to make a modification to the source code you would need to generate distributives yourself. To do that, first generate JAX-WS artifacts using build-server task from wsbuild.xml ant script, then you could use build.xml tasks to generate any of the distributives you need.

+

Structure of the project

+
    +
  • binaries contains native executables e.g. clustalw
  • +
  • src contains sources of native executables
  • +
  • windows contains pre-compiled Windows binaries
  • +
  • compilebin.sh - the script to complile binaries
  • +
  • setexecflag.sh - the script to set executable flag for the binaries
  • +
  • conf contains JABAWS configuration files
  • +
  • ExecutionStatistics the database for storing collected execution statistics
  • +
  • jobsout a default folder for temporary job directories
  • +
  • statpages the web pages for execution statistics display
  • +
  • WEB-INF default
  • +
  • website contains the JABAWS web pages
  • +
  • archive contains JABAWS packages, the WAR and JAR files
  • + +
+

The code structure

+
    +
  • datamodel contains the JABAWS datamodel
  • +
  • engine contains the JABAWS engine - the code that abstract the execution environment and executes native binaries
  • +
  • runner contains the JABAWS runners - thin wrappers for native binaries
  • +
  • webservices contains the JABAWS SOAP web services
  • +
  • testsrc contains the JABAWS unit tests
  • +
+

Each source folder depends on the upper folders for compilation. For example, the datamodel is the top level folder so it has no other dependencies on other JABAWS code. The Engine level depends on the datamodel to compile etc. The web services folder is the bottom layer and depends on all the other source code.

+

So the JABAWS project is split into 4 layers. From bottom-up the first layer consists from the value classes used by all other layers of the hierarchy, in particular web services. So, to be able to use JABAWS one needs to have these classes. At the same time classes on this layer does not have any dependencies on the layers above.

+

The second layer contains code for execution of the wrappers, which are the abstraction describing native executables. JABAWS can execute tasks locally that is on the same machine as JVM and on the cluster. Thus currently code on this layer contain two engines. This layer depends on the layer underneath, the data model layer, but is completely independent from the code above.

+

The third layer consists of the wrappers for the native executables and classes to handle their configuration. It depends on the engines and the data model, but know nothing about the web services.

+

Finally, the upper layer contains the web services, that depend on all the layers below.

+

The layer isolation is archived though specially designed compilation task which is executed sequentially in several stages so that the first layer compiles before any other layers, second layer compiles after that and process continies before all the code is compiled. Any violation of the layer boundaries results in the compilation failure. Use Ant "Compile" or "Complile_with_debug" tasks to perform the staged compilation.

+

A client package contains only classes from data model layer and a simple web services client. Framework package is for anyone who want to use JABAWS framework for controlling native executables in local or cluster environments. Framework exclude the web services layer. Server package contains all the code.

+ +

Running tests

+

+JABAWS uses TestNG framework for testing. The test results for the JABAWS package offered for download can be found at: +Test Results
+JABAWS uses TestNG for testing. There is a TestNG plugin available for Eclipse +which has functionality similar to JUnit. However, no plugins are necessary to run the test cases, as testng jar is supplied +with JABAWS together with an ant tasks to run the test cases.

+

The best way to ensure that JABAWS framework is completely functional on your system is to run all test cases. +Test cases tests all aspects of JABAWS functionality. Consequently, one need to have non windows operation system and support +of the cluster to be able to run all tests. If your system does not support cluster, then you could run all test excluding +those that depends on the cluster.

+

Several testing groups are supported:

+
    +
  • All tests (Test)
  • +
  • Cluster tests (Run_cluster_dependent_test)
  • +
  • Cluster independent tests ()
  • +
  • Windows only tests (All_cluster_independent_windows_only_tests)
  • +
  • Performance and stability tests (Long_tests)
  • +
  • Re-run failed tests (Rerun_failed_tests)
  • +
  • Run custom test (CustomTest)
  • +
+

To run the tests you need to download all sources from repository. Once you have done that, enter into the command line mode, change directory to the project directory and type: + ant -f build.xml <test group name>

+

Make sure you have Apache Ant + installed and path to ant executable is defined in your path environmental variable. + Replace test group name with the one of the names given in the list above to run required group of tests e.g for running cluster only tests + use the following + command: ant -f build.xml Run_cluster_dependent_test + If you work under Linux you could use a simple script from the root folder of repository called runtests.sh + This script simply contains a collection of the test commands described above and paths to java home directory and an ant executable, + which you can define once for your system and then reuse.

+

+ A handy feature of TestNG is its ability to re-run failed tests. Failed test ant file is stored in + test-output/testng-failed.xml. and is used in the ant task called + Rerun_failed_tests. So re-running failed tests requires no more work than running any other test group and could be accomplished with the command: ant -f build.xml Rerun_failed_tests CustomTest runs the test defined in the project root directory file called temp-testng-customsuite.xml. This file is generated by TestNG plugin every time you run the test from Eclipse. Thus an easy way to run a test in a different environment is to run it from Eclipse first and then from ant using a custom test procedure.

+

For cluster execution make sure that the property LD_LIBRARY_PATH defined in build.xml points to cluster engine LD libraries directory in your local system.

+ +

Preparing distributive's

+

There are a number of ant tasks aimed for preparing distributives for download. Currently a few types of JABAWS packages are offered:

+
    +
  1. Client only (contains classes required to access JABA Web Services)
  2. +
  3. Platform specific JABAWS (windows and other)
  4. +
  5. JABAWS without binaries
  6. +
  7. JABAWS framework
  8. +
+

Corresponding build task names are:

+
    +
  1. min-jaba-client
  2. +
  3. jaba-windows, jaba-complete
  4. +
  5. jaba-no-binaries
  6. +
  7. full-jaba-client
  8. +
+

The easiest way to build all distributives is to call build-all ant task. + There are more tasks defined in build.xml than described here. They are mostly self explanatory.

+

If you made any changes to the data model and would like to generate a complete JABAWS + distro make sure you have rebuilt jaxws artifact as described below.

+

Building web services artifacts

+

Server side artifacts should be rebuild whenever the data model, meta model or MSA interface were changed. + To do that run build-server task from wsbuild.xml ant build file. WSDL files will be generated in + webservices/compbio/ws/server/resource directory. It is not necessary to + edit them if any of the JABAWS clients are used. JABAWS are the standard JAX-WS web services, which are + WS-I basic profile compatible.

+

Rough guide - adding a new web service

+
    +
  1. +

    Add a new executable which you'd like to wrap as a JABAWS web service to the binaries folder. + If it has the source code and can be recompiled for different platforms include it under + binaries/src. Edit setexecutableflag.sh + and compilebin.sh scripts in binaries/src + accordingly.

    +
  2. +

    Make sure that all the dependencies of the software being installed are satisfied. + If there are other binaries they should be included as well. Keep the dependent + binaries in a subfolder for the main executable. Update + compilebin.sh and setexecflag.sh scripts accordingly.

    +
  3. +

    Make sure that the new executable does not have any hard links to its dependencies, e.g. is able to run from + any installation folder and does not contain any hard coded paths.

    +
  4. +

    Describe executable in conf/Exectuable.properties file. The lowercase name of the wrapper should be included + in the name of the property for example Clustal properties all include clustal as a part of the name e.g. local.clustalw.bin. + The same property for MAFFT will be called local.mafft.bin. For more help please refer to the Executable.properties file.

    +
  5. +

    Describe the executable supported parameters in the + <ExecutableName>Parameters.xml, presets in the + <ExecutableName>Presets.xml and the execution limits in the + <ExecutableName>Limit.xml. By convention these files are stored + in conf/settings. All of these are optional. If the executable + does not support parameters you do not have to mention the XXXParameter.xml file + in the Executable.properties file at all. The same is true for + Presets and Limits.

    +
  6. +

    Create a Java wrapper class for your executable. Create it within runner source directory. + Examples of other wrappers can be found in compbio.runner.msa or + in other compbio.runner.* packages. Wrapper should extend + SkeletalExecutable<T> and implement + PipedExecutable<T> + if you need to pass the input or collect the results from the standard in/out. Please see Mafft + code as example. Wrapper should expend SkeletalExecutable<T> + if input/output can be set as a parameter for an executable. Please see the ClustalW code as example.

    +
  7. +

    Create a testcase suit for your wrapper in testsrc and run the test cases.

    +
  8. +

    Create parser for the output files of your executable. Suggested location + compbio.data.sequence.SequenceUtil .

    +
  9. +

    Test the parser.

    +
  10. +

    Decide which web services interfaces your executable is going to match. For example + if the executable output can be represented as SequenceAnnotation then SequenceAnnotation + interface might be appropriate. For multiple sequence alignment an Msa interface should be used.

    +
  11. +

    If you find a web interface that matches your returning data type, then + implement a web service which confirms to it within a webservices source folder.

    +
  12. +

    Register web service in WEB-INF/web.xml + and WEB-INF/sun-jaxws.xml .

    +
  13. +

    Add generated wsdl to wsbuild.xml ant script to generate the stubs.

    +
  14. +

    Run build-server task in wsbuild file. Watch for errors. If the task fails that means + that JAXB cannot serialize some of your new data structures. Add appropriate annotations to your data types. + Also check that:

    +
      +
    • you do not have interfaces to serialize, since JAXB cannot serialize them
    • +
    • you have a default no args constructor (can be private if you do not need it)
    • +
    • JAXB cannot serialize Java Map class, use a custom data structure instead
    • +
    • Enum cannot be serialized as its abstract class (do not confuse with enum which is fine)
    • +
    • Fields serialization leaves a little more space for manoeuvre. + If you do this then you may accept
      and return interfaces, e.g. List, Map; abstract classes etc, from your methods +
    • +
    +

    If you have the data on the server side, but nothing is coming through to the + client, this is a JAXB serialization problem. They tend to be very silent and + thus hard to debug. Check your data structure can be serialized!

    +
  15. +

    Modify the client to work with your new web service. Update Services + enumeration to include new service and ensure that all the methods of this + enumeration take into account the new service. Update the client help text + (client_help.txt) and insert it into the Constraints class.

    +
  16. +

    Test the web service with the client.

    +
  17. +

    Test on the cluster.

    +
  18. +
+

 

+
+ +
+
+ + + + + + diff --git a/website/man_servervm.html b/website/v_2_1_0/man_servervm.html similarity index 98% rename from website/man_servervm.html rename to website/v_2_1_0/man_servervm.html index 4b35ca4..cb081eb 100644 --- a/website/man_servervm.html +++ b/website/v_2_1_0/man_servervm.html @@ -1,174 +1,174 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS): Manual - - - - - - - -
- - - - - -
- - - -
-

JABAWS MANUAL

- -

JABAWS Server Virtual Appliance

- - -

 

-

What is the JABAWS Server Virtual Appliance?

-

The JABAWS Virtual Appliance is a -way to run JABAWS server locally without the need to connect to the internet or configure JABAWS. -What the appliance provides is a 'virtual server machine' (or more simply - virtual machine or VM), -running an installation of the JABAWS Web Application Archive (WAR) on -TurnKey Linux 12.1 (Tomcat edition). Once this has -started up, it displays a message indicating the IP address of the JABAWS server, allowing any JABAWS -client (such as Jalview or the JABAWS command line client) to connect to it.
-You can run the appliance with freely available program such as -VMware Player, but you will need to install it -first. We have tested the JABAWS appliance with VMware Player v 3.1.2 on Windows and Linux, and -VMware Fusion on Mac. -However, you are not limited to these virtualization systems and can use the JABAWS appliance with any other virtualization platform. You can use VMware OVF tool to prepare JABAWS image for a different virtualization platform e.g. VirtualBox.

-

When to use the JABAWS Virtual Appliance

-

The appliance best suits users who would like to use the JABA web services locally. This might be because they do not want to access -systems over an internet, or just want to keep their data private. It is also -the recommended option for users who want to install JABAWS on Windows, which does not support all the bioinformatics programs that JABAWS can run.

-

When not to use the JABAWS Virtual Appliance

-

-For servers that will be used heavily, we recommend that a JABAWS Server WAR distribution is deployed, rather than the Virtual Appliance version of JABAWS. -This is because the JABAWS appliance is pre-configured to use only 1 CPU and 512M of memory -(where the minimum amount of memory required for a JABAWS server is about 378M), which is unlikely to be sufficient for heavy computation. -It is possible to reconfigure the virtual appliance so it uses more computation resources, -but for most production environments, the JABAWS WAR distribution will be easier to deploy and fine tune to take advantage of the available resources.

- -

How to install VMware Player

-

Please see the VMware Player - web sites for up to date instructions and downloads.

- -

VMware Player appliance configuration

-

The free VMware Player can be used to run the JABAWS services from the Windows and Linux host operating systems. VMware Fusion, a commercial VMware product, offers virtual machine support for Mac.

-

To run the JABAWS server on VMware player, unpack the JABAWS VM into one of the folders on your local hard drive. Open VMware Player, click "Open Virtual Machine" and point the Player to the location of the JABAWS, then choose the JABAWS.vmx file to open an appliance.

-

When you play the machine for the first time the Player might ask you whether "This virtual machine may have been moved or copied.", say that you have copied it. That is all.

-

JABAWS Appliance details

-

By default, the JABAWS virtual appliance is configured with 512M of memory and 1 CPU, but you are free to change these settings. If you have more than one CPU or CPU core on your computer you can make them available for the JABAWS virtual machine by editing virtual machine settings. Please bear in mind that more CPU power will not make a single calculation go faster, but it will enable the VM to do calculations in parallel. Similarly, you can add more memory to the virtual machine. More memory lets your VM deal with larger tasks, e.g. work with large alignments.

-

The VMware Player screen shot below displays JABAWS VM CPU settings.

-

vmware cpu settings

- -

JABAWS Virtual Appliance Configuration:

-

VMware info

-
    -
  • CPUs : 1
  • -
  • RAM : 512 MB
  • -
  • Networking : Host only (the VM has no access to the outside network, nothing from the outside network can access the VM)
  • -
  • Hard disk : 20 GB (expanding)
  • -
  • VMware tools : Installed
  • -
-

OS information

-
    -
  • OS : TurnKey Linux (v. 12.1, Standalone Tomcat) based on Debian 6.0.7 (Squeeze)
  • -
  • Installation : Oracle Java 6, Tomcat 7, JABAWS v. 2.1
  • -
  • IPv4 address : dhcp
  • -
  • IPv6 address : auto
  • -
  • DNS name : none
  • -
  • Name server : dhcp
  • -
  • Route : dhcp
  • -
  • Keyboard : US_intl
  • -
-

Login credentials
-

    -
  • Root password: jabaws
  • -
  • Tomcat admin password: adminjabaws
  • -
-

Services available at the virtial machine IP (e.g. VM_IP = 172.16.232.149)

-
    -
  • Tomcat Web Server: http://VM_IP (e.g. http://172.16.232.149)
  • -
  • Jabaws URL: http://VM_IP/jabaws (e.g. http://172.16.232.149/jabaws)
  • -
  • Web Shell: https://VM_IP:12320/ (e.g. https://172.16.232.149:12320)
  • -
  • Webmean: https://VM_IP:12321/ (e.g. https://172.16.232.149:12321)
  • -
  • SSH/SFTP: root@VM_IP (e.g. ssh root@172.16.232.149)
  • -
- -

Configuring Jalview to work with your JABAWS VM

-

-After booting the JABAWS VM, you should see similar screen, however, the IP address of your VM may be different. -To enable Jalview to work with your JABAWS appliance you need to go to Jalview->Tools->Preferences->Web Services -> -New Service URL, and add JABAWS URL into the box provided. For more information please refer to Jalview -help pages. -

-

JABAWS welcome screen

-

If you click on Advanced Menu, you will see the configuration console, similar to the one below.

-

JABAWS welcome screen

-

If you need to configure a static IP address the configuration console will help you with this. Shutting down the VM is best from the configuration console as well.

-

VM Network Settings

-

-By default the JABAWS VM is configured to use host-only networking. This means that the host can communicate with the VM via a network, -but no other machines can. Similarly, the VM cannot communicate with any other computers apart from the host. If you want to connect -to the Internet from the VM, configure your VM to use NAT network. However, you will not be able to connect to the VM from the host -in such case. If you want to be able to connect to your VM and let VM connect to the internet at the same time you would have to use -a Bridged network. In such a case you would have to configure the VM IP address manually (unless of course your network has a DHCP -server to do that)

-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS): Manual + + + + + + + +
+ + + + + +
+ + + +
+

JABAWS MANUAL

+ +

JABAWS Server Virtual Appliance

+ + +

 

+

What is the JABAWS Server Virtual Appliance?

+

The JABAWS Virtual Appliance is a +way to run JABAWS server locally without the need to connect to the internet or configure JABAWS. +What the appliance provides is a 'virtual server machine' (or more simply - virtual machine or VM), +running an installation of the JABAWS Web Application Archive (WAR) on +TurnKey Linux 12.1 (Tomcat edition). Once this has +started up, it displays a message indicating the IP address of the JABAWS server, allowing any JABAWS +client (such as Jalview or the JABAWS command line client) to connect to it.
+You can run the appliance with freely available program such as +VMware Player, but you will need to install it +first. We have tested the JABAWS appliance with VMware Player v 3.1.2 on Windows and Linux, and +VMware Fusion on Mac. +However, you are not limited to these virtualization systems and can use the JABAWS appliance with any other virtualization platform. You can use VMware OVF tool to prepare JABAWS image for a different virtualization platform e.g. VirtualBox.

+

When to use the JABAWS Virtual Appliance

+

The appliance best suits users who would like to use the JABA web services locally. This might be because they do not want to access +systems over an internet, or just want to keep their data private. It is also +the recommended option for users who want to install JABAWS on Windows, which does not support all the bioinformatics programs that JABAWS can run.

+

When not to use the JABAWS Virtual Appliance

+

+For servers that will be used heavily, we recommend that a JABAWS Server WAR distribution is deployed, rather than the Virtual Appliance version of JABAWS. +This is because the JABAWS appliance is pre-configured to use only 1 CPU and 512M of memory +(where the minimum amount of memory required for a JABAWS server is about 378M), which is unlikely to be sufficient for heavy computation. +It is possible to reconfigure the virtual appliance so it uses more computation resources, +but for most production environments, the JABAWS WAR distribution will be easier to deploy and fine tune to take advantage of the available resources.

+ +

How to install VMware Player

+

Please see the VMware Player + web sites for up to date instructions and downloads.

+ +

VMware Player appliance configuration

+

The free VMware Player can be used to run the JABAWS services from the Windows and Linux host operating systems. VMware Fusion, a commercial VMware product, offers virtual machine support for Mac.

+

To run the JABAWS server on VMware player, unpack the JABAWS VM into one of the folders on your local hard drive. Open VMware Player, click "Open Virtual Machine" and point the Player to the location of the JABAWS, then choose the JABAWS.vmx file to open an appliance.

+

When you play the machine for the first time the Player might ask you whether "This virtual machine may have been moved or copied.", say that you have copied it. That is all.

+

JABAWS Appliance details

+

By default, the JABAWS virtual appliance is configured with 512M of memory and 1 CPU, but you are free to change these settings. If you have more than one CPU or CPU core on your computer you can make them available for the JABAWS virtual machine by editing virtual machine settings. Please bear in mind that more CPU power will not make a single calculation go faster, but it will enable the VM to do calculations in parallel. Similarly, you can add more memory to the virtual machine. More memory lets your VM deal with larger tasks, e.g. work with large alignments.

+

The VMware Player screen shot below displays JABAWS VM CPU settings.

+

vmware cpu settings

+ +

JABAWS Virtual Appliance Configuration:

+

VMware info

+
    +
  • CPUs : 1
  • +
  • RAM : 512 MB
  • +
  • Networking : Host only (the VM has no access to the outside network, nothing from the outside network can access the VM)
  • +
  • Hard disk : 20 GB (expanding)
  • +
  • VMware tools : Installed
  • +
+

OS information

+
    +
  • OS : TurnKey Linux (v. 12.1, Standalone Tomcat) based on Debian 6.0.7 (Squeeze)
  • +
  • Installation : Oracle Java 6, Tomcat 7, JABAWS v. 2.1
  • +
  • IPv4 address : dhcp
  • +
  • IPv6 address : auto
  • +
  • DNS name : none
  • +
  • Name server : dhcp
  • +
  • Route : dhcp
  • +
  • Keyboard : US_intl
  • +
+

Login credentials
+

    +
  • Root password: jabaws
  • +
  • Tomcat admin password: adminjabaws
  • +
+

Services available at the virtial machine IP (e.g. VM_IP = 172.16.232.149)

+
    +
  • Tomcat Web Server: http://VM_IP (e.g. http://172.16.232.149)
  • +
  • Jabaws URL: http://VM_IP/jabaws (e.g. http://172.16.232.149/jabaws)
  • +
  • Web Shell: https://VM_IP:12320/ (e.g. https://172.16.232.149:12320)
  • +
  • Webmean: https://VM_IP:12321/ (e.g. https://172.16.232.149:12321)
  • +
  • SSH/SFTP: root@VM_IP (e.g. ssh root@172.16.232.149)
  • +
+ +

Configuring Jalview to work with your JABAWS VM

+

+After booting the JABAWS VM, you should see similar screen, however, the IP address of your VM may be different. +To enable Jalview to work with your JABAWS appliance you need to go to Jalview->Tools->Preferences->Web Services -> +New Service URL, and add JABAWS URL into the box provided. For more information please refer to Jalview +help pages. +

+

JABAWS welcome screen

+

If you click on Advanced Menu, you will see the configuration console, similar to the one below.

+

JABAWS welcome screen

+

If you need to configure a static IP address the configuration console will help you with this. Shutting down the VM is best from the configuration console as well.

+

VM Network Settings

+

+By default the JABAWS VM is configured to use host-only networking. This means that the host can communicate with the VM via a network, +but no other machines can. Similarly, the VM cannot communicate with any other computers apart from the host. If you want to connect +to the Internet from the VM, configure your VM to use NAT network. However, you will not be able to connect to the VM from the host +in such case. If you want to be able to connect to your VM and let VM connect to the internet at the same time you would have to use +a Bridged network. In such a case you would have to configure the VM IP address manually (unless of course your network has a DHCP +server to do that)

+
+ +
+
+ + + + + + + diff --git a/website/man_serverwar.html b/website/v_2_1_0/man_serverwar.html similarity index 98% rename from website/man_serverwar.html rename to website/v_2_1_0/man_serverwar.html index c0168cb..892fba0 100644 --- a/website/man_serverwar.html +++ b/website/v_2_1_0/man_serverwar.html @@ -1,253 +1,253 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS): Manual - - - - - - - -
- - - - - -
- - - -
-

JABAWS MANUAL

- -

JABAWS Server Web Application aRchive (WAR)

- - -

Troubleshooting

- -

System Requirements

-

JABAWS requires a Java web application server compliant with -version 2.4 of the Java Servlet specification, and a Java 6 runtime -environment. We recommend using an official Oracle Java 6 runtime -environment, and Apache-Tomcat web application server version 7, but older Tomcat versions above 5.5 will work too.
-Please Note: The JABAWS WAR is not generally compatible with older Mac systems based on the PowerPC architecture, since Java 1.6 is not available to run JABAWS.

- -

JABAWS Web Application aRchive can run on any host operating system that supports Java 1.6. However JABAWS depends on a number of third party programs which are not available for all operating systems. In particular, not all web services are currently available for MS Windows platform. - -

-

JABAWS comes with pre-compiled MS Windows and Linux x86 binaries, as well as the source code and build scripts necessary to recompile them.

-

To run JABAWS on the cluster you must have shared disk space accessible from all cluster nodes.

-

Installing the JABAWS WAR file

-

JABAWS is distributed as a web application archive (WAR). To -deploy JABAWS in Apache-Tomcat - simply drop the war file into the -webapps directory of a running -Tomcat, and it will do the rest. If you used this deployment procedure, do not remove the Jabaws WAR file, otherwise Tomcat will undeploy your application! The context path for your deployed application will be the same as the name of the war file. For example, assuming the Tomcat server is running on the localhost:8080 and jaba.war file is put into the <tomcat server root>/webapps directory, the deployed application from the jaba.war file then can be accessed by this URL http://localhost:8080/jaba.

-

For any other web application - server, please follow your server's specific deployment procedure - for 'WAR' files. If you install JABAWS on a MS Windows machine, then - at this point your JABAWS installation will already be up and - running, and you can try its services out as described here. If you install JABAWS on Linux you will need to set an executable flag for binaries. This is described here. If your host operating system is different from Windows or Linux then read on.

-

Preparing executables for use with JABAWS

- -

JABAWS's web services use command line programs to do -the actual analysis, so it must have access to programs -which can be executed on your platform. The native executables -bundled with JABAWS for Windows (32-bit) and Linux (i386, 32-bit) should be -OK for those systems. The source code for these -programs is also provided so you can recompile for your own -architecture and exploit any optimizations that your system can -provide. Alternately, if you have already got binaries on your -system, then you can simply change the paths in JABAWS's -configuration files so these are used instead.

- -

Using the pre-compiled i386 binaries on Linux

- -

JABAWS comes with pre-compiled x86 Linux binaries, thus on such systems JABAWS should work straight out of the box. If you are in any doubts or experience problems you may want to make sure that the binaries supplied work under your OS. To do this just execute each binary, without any command line options or -input files. If you see an error message complaining about missing -libraries or other problems, then you probably need to recompile the binaries.

- -You can try the JABAWS functionality with the JABAWS test client or have a look at deploying on Tomcat tips if you experience any problems.
- Note: You may want to enable logging, as described here.
- - -

Recompiling the bundled -programs for your system

- -

If you have a fully equipped build environment on your -(POSIX-like) system, then you should be able to recompile the -programs from the source distributions which are included -in the JABAWS war file. A script called 'compilebin.sh' is provided -to automate this task.

- -
    -
  1. In a terminal window, change the working directory to binaries/src
  2. - -
  3. execute the compilebin.sh -script,
    - either use: chmod +x compilebin.sh; -compilebin.sh > compilebin.out;
    - or: sh compilebin.sh > -compilebin.out
  4. - -
  5. Now run sh setexecflag.sh
    - If any of the binaries was not recompiled, then a 'file not found' -error will be raised.
  6. - -
  7. Finally, restart your Tomcat server (or JABAWS application only), and test JABAWS to -check that it can use the new binaries.
  8. -
- -

If you couldn't compile everything, then it may be that your system does -not have all the tools required for compiling the programs. At the very -least check that you have gcc, g++ and make installed in your -system. If not install these packages and repeat the compilation -steps again. You should also review the compilebin.sh output - -which was redirected to compilebin.out, and any errors output to -the terminal. Finally, try obtaining the pre -compiled binaries for your OS.

- -

Reuse the binaries that are -already in your system

- -

If you would like to use the binaries you already have, then you -just need to let JABAWS know where they are. To do this, edit: -conf/Executable.properties

-

When specifying paths to executables that already exist on your system, make sure you provide an absolute path, or one relative to the JABAWS directory inside webapps. For example, the default path for clustalw is defined -aslocal.clustalw.bin=binaries/src/clustalw/src/clustalw2 -Alternatively, instead of changing Executable.properties you could also replace -the executables bundled with JABAWS with the ones that you have, or make symbolic links to them. -Then the default configuration will work for you. More information -about the -Executable.properties file is given in the JABAWS Configuration chapter.

- -

Obtaining command line binaries for your operating system

- -

You could search for pre-packaged compiled executable in your -system package repository or alternately, download pre-compiled -binaries from each alignment program's home page. Then, either -replace the executables supplied with the downloaded ones, or -modify the paths in executable.properties as described above. Below are some suggestions on where you may be able to get the binaries for your system.

- -

Testing JABAWS Server

-

First of all make sure that Tomcat server is started successfully. If this was the case, then you should see JABAWS home page when you navigate to your Tomcat JABAWS context path e.g. http://myhost.compbio.ac.uk:8080/jabaws

-

Using JABAWS service status checker

-

If you see it, then it is time to make sure that web services are working too. The easiest way to do this is to access Services Status page available from the main JABAWS web page menu.

-

If you need to monitor web service health automatically when the best option is to use service checker that responds with the standard HTTP status code. To access this checker use the following URL: <jabaws_server>/HttpCodeResponseServiceStatus This page returns code 200, and no page context if all services are operational, 503 if one of the services have problems. You can also check each web service individually by providing the name of the web service to check at the end of the service checker URL like this: <jabaws_server>/HttpCodeResponseServiceStatus/ClustalWS

-

Upon request, the service status checker will examine the health of the ClustalWS web service only. If the service name is not valid, then the service checker will return code 400.

-

Using command line client

-

Alternatively, you should be able to use the test program which can be found in <webapplicationpath>/WEB-INF/lib/jabaws-client.jar file. To run the tests type: java -jar jabaws-client.jar -h=<Your web application server host name, port and JABAWS context path>

-

For example to test all JABAWS web services on host myhost.compbio.ac.uk type:

-

java -jar jabaws-client.jar -h=http://myhost.compbio.ac.uk:8080/jabaws

-

You can choose a particular web server using -s option like this java -jar jabaws-client.jar -h=http://myhost.compbio.ac.uk:8080/jabaws -s=ClustalWS This command line assumes that java executable is in your path and jabaws-client.jar is located in the current directory.

-

An example of the report testing tool produces for operating web service looks like this:

-

Connecting to service MuscleWS on http://myhost.compbio.ac.uk:8080/jabaws ... OK
- Testing alignment with default parameters:
- Queering job status...OK
- Retrieving results...OK
- Testing alignment with presets:
- Aligning with preset 'Protein alignment(Fastest speed)'... OK
- Aligning with preset 'Nucleotide alignment(Fastest speed)'... OK
- Aligning with preset 'Huge alignments (speed-oriented)'... OK
- Queering presets...OK
- Queering Parameters...OK
- Queering Limits...OK
- Queering Local Engine Limits...OK
- Check is completed service MuscleWS IS WORKING
An example of the response of a web service which is deployed but is not operating is below:

-

Connecting to service ProbconsWS on http://localhost:8080/ws ... OK
- Testing alignment with default parameters:FAILED
- Service ProbconsWS IS NOT FUNCTIONAL
If the web server did not respond the message looks like following: Connecting to service TcoffeeWS on http://localhost:8080/ws ... FAILED

-

Running many JABAWS instances on the same server

-

JABAWS is supplied as a Web Application aRchive which can be dealt with as any other web applications. So it is perfectly possible to run two JABAWS instances from the same server. Just make two different contexts on your application server and unpack JABAWS in both of them. For example if your server name is http://www.align.ac.uk, and the context names are public and private. Than one group of users could be given a URL http://www.align.ac.uk/public and another http://www.align.ac.uk/private. These contexts will be served by two independent JABAWS instances, and could be configured differently. If you keep local engine enabled, make sure you reduce the number of threads local engine is allowed to use to avoid overloading the server. Alternatively two completely separate web application server instances (e.g. Apache-Tomcat) could be used. This will give you a better resilience and more flexibility in memory settings.

-

JABAWS on a single server

-

You can run JABAWS on a single server. Obviously the capacity will be limited, but it may be sufficient for a small lab. Installed on a single server, JABAWS executes tasks in parallel, so the more cores the server has the more requests it will be able to handle.

-

JABAWS supported cluster batch management systems

-

JABAWS uses DRMAA v. 1.0 library to send and manage jobs on the cluster. DRMAA supports many different cluster job management systems. Namely Sun Grid Engine, Condor, PBS, GridWay, Globus 2/4, PBSPro, LSF. For up to date information please consult DRMAA web site. We found that DRMAA implementation differ from platform to platform and were trying to use only the basic functions. We have only tested JABAWS on Sun Grid Engine v 6.2. Please let use know if you have any experience of running JABAWS on other platforms.

-

Manually deploying JABAWS application on Apache-Tomcat

-

To stop Tomcat from automatically undeploying your application if the war file is removed use an explicit application descriptor. It could come in different flavors, the one I prefer is to drop a context descriptor file into <tomcatRoot>conf/Catalina/localhost directory. Name your context file the same as your application folder e.g. if your JABAWS resides in webappl/jabaws folder, then call the context file jabaws.xml. Below is an example of content this file might have.

-

<?xml version="1.0" encoding="UTF-8"?>
- <Context antiResourceLocking="false" privileged="true" />

-

This should be sufficient to prevent Tomcat from removing your JABAWS from WEBAPPS. For more information about the Tomcat deployer read this documentation on the Apache-Tomcat web site.

-

Apache-Tomcat fails to deploy jabaws.war file

-
    -
  • Make sure Tomcat has sufficient access rights to read your war file.
  • -
  • Restart the Tomcat, sometimes it will not restart after the new war file is added without restart
  • -
  • If Tomcat still refuses to unpack the war file, unpack it manually into web application folder (the war file is just a zip archive). Restart the Tomcat.
  • -
-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS): Manual + + + + + + + +
+ + + + + +
+ + + +
+

JABAWS MANUAL

+ +

JABAWS Server Web Application aRchive (WAR)

+ + +

Troubleshooting

+ +

System Requirements

+

JABAWS requires a Java web application server compliant with +version 2.4 of the Java Servlet specification, and a Java 6 runtime +environment. We recommend using an official Oracle Java 6 runtime +environment, and Apache-Tomcat web application server version 7, but older Tomcat versions above 5.5 will work too.
+Please Note: The JABAWS WAR is not generally compatible with older Mac systems based on the PowerPC architecture, since Java 1.6 is not available to run JABAWS.

+ +

JABAWS Web Application aRchive can run on any host operating system that supports Java 1.6. However JABAWS depends on a number of third party programs which are not available for all operating systems. In particular, not all web services are currently available for MS Windows platform. + +

+

JABAWS comes with pre-compiled MS Windows and Linux x86 binaries, as well as the source code and build scripts necessary to recompile them.

+

To run JABAWS on the cluster you must have shared disk space accessible from all cluster nodes.

+

Installing the JABAWS WAR file

+

JABAWS is distributed as a web application archive (WAR). To +deploy JABAWS in Apache-Tomcat - simply drop the war file into the +webapps directory of a running +Tomcat, and it will do the rest. If you used this deployment procedure, do not remove the Jabaws WAR file, otherwise Tomcat will undeploy your application! The context path for your deployed application will be the same as the name of the war file. For example, assuming the Tomcat server is running on the localhost:8080 and jaba.war file is put into the <tomcat server root>/webapps directory, the deployed application from the jaba.war file then can be accessed by this URL http://localhost:8080/jaba.

+

For any other web application + server, please follow your server's specific deployment procedure + for 'WAR' files. If you install JABAWS on a MS Windows machine, then + at this point your JABAWS installation will already be up and + running, and you can try its services out as described here. If you install JABAWS on Linux you will need to set an executable flag for binaries. This is described here. If your host operating system is different from Windows or Linux then read on.

+

Preparing executables for use with JABAWS

+ +

JABAWS's web services use command line programs to do +the actual analysis, so it must have access to programs +which can be executed on your platform. The native executables +bundled with JABAWS for Windows (32-bit) and Linux (i386, 32-bit) should be +OK for those systems. The source code for these +programs is also provided so you can recompile for your own +architecture and exploit any optimizations that your system can +provide. Alternately, if you have already got binaries on your +system, then you can simply change the paths in JABAWS's +configuration files so these are used instead.

+ +

Using the pre-compiled i386 binaries on Linux

+ +

JABAWS comes with pre-compiled x86 Linux binaries, thus on such systems JABAWS should work straight out of the box. If you are in any doubts or experience problems you may want to make sure that the binaries supplied work under your OS. To do this just execute each binary, without any command line options or +input files. If you see an error message complaining about missing +libraries or other problems, then you probably need to recompile the binaries.

+ +You can try the JABAWS functionality with the JABAWS test client or have a look at deploying on Tomcat tips if you experience any problems.
+ Note: You may want to enable logging, as described here.
+ + +

Recompiling the bundled +programs for your system

+ +

If you have a fully equipped build environment on your +(POSIX-like) system, then you should be able to recompile the +programs from the source distributions which are included +in the JABAWS war file. A script called 'compilebin.sh' is provided +to automate this task.

+ +
    +
  1. In a terminal window, change the working directory to binaries/src
  2. + +
  3. execute the compilebin.sh +script,
    + either use: chmod +x compilebin.sh; +compilebin.sh > compilebin.out;
    + or: sh compilebin.sh > +compilebin.out
  4. + +
  5. Now run sh setexecflag.sh
    + If any of the binaries was not recompiled, then a 'file not found' +error will be raised.
  6. + +
  7. Finally, restart your Tomcat server (or JABAWS application only), and test JABAWS to +check that it can use the new binaries.
  8. +
+ +

If you couldn't compile everything, then it may be that your system does +not have all the tools required for compiling the programs. At the very +least check that you have gcc, g++ and make installed in your +system. If not install these packages and repeat the compilation +steps again. You should also review the compilebin.sh output - +which was redirected to compilebin.out, and any errors output to +the terminal. Finally, try obtaining the pre +compiled binaries for your OS.

+ +

Reuse the binaries that are +already in your system

+ +

If you would like to use the binaries you already have, then you +just need to let JABAWS know where they are. To do this, edit: +conf/Executable.properties

+

When specifying paths to executables that already exist on your system, make sure you provide an absolute path, or one relative to the JABAWS directory inside webapps. For example, the default path for clustalw is defined +aslocal.clustalw.bin=binaries/src/clustalw/src/clustalw2 +Alternatively, instead of changing Executable.properties you could also replace +the executables bundled with JABAWS with the ones that you have, or make symbolic links to them. +Then the default configuration will work for you. More information +about the +Executable.properties file is given in the JABAWS Configuration chapter.

+ +

Obtaining command line binaries for your operating system

+ +

You could search for pre-packaged compiled executable in your +system package repository or alternately, download pre-compiled +binaries from each alignment program's home page. Then, either +replace the executables supplied with the downloaded ones, or +modify the paths in executable.properties as described above. Below are some suggestions on where you may be able to get the binaries for your system.

+ +

Testing JABAWS Server

+

First of all make sure that Tomcat server is started successfully. If this was the case, then you should see JABAWS home page when you navigate to your Tomcat JABAWS context path e.g. http://myhost.compbio.ac.uk:8080/jabaws

+

Using JABAWS service status checker

+

If you see it, then it is time to make sure that web services are working too. The easiest way to do this is to access Services Status page available from the main JABAWS web page menu.

+

If you need to monitor web service health automatically when the best option is to use service checker that responds with the standard HTTP status code. To access this checker use the following URL: <jabaws_server>/HttpCodeResponseServiceStatus This page returns code 200, and no page context if all services are operational, 503 if one of the services have problems. You can also check each web service individually by providing the name of the web service to check at the end of the service checker URL like this: <jabaws_server>/HttpCodeResponseServiceStatus/ClustalWS

+

Upon request, the service status checker will examine the health of the ClustalWS web service only. If the service name is not valid, then the service checker will return code 400.

+

Using command line client

+

Alternatively, you should be able to use the test program which can be found in <webapplicationpath>/WEB-INF/lib/jabaws-client.jar file. To run the tests type: java -jar jabaws-client.jar -h=<Your web application server host name, port and JABAWS context path>

+

For example to test all JABAWS web services on host myhost.compbio.ac.uk type:

+

java -jar jabaws-client.jar -h=http://myhost.compbio.ac.uk:8080/jabaws

+

You can choose a particular web server using -s option like this java -jar jabaws-client.jar -h=http://myhost.compbio.ac.uk:8080/jabaws -s=ClustalWS This command line assumes that java executable is in your path and jabaws-client.jar is located in the current directory.

+

An example of the report testing tool produces for operating web service looks like this:

+

Connecting to service MuscleWS on http://myhost.compbio.ac.uk:8080/jabaws ... OK
+ Testing alignment with default parameters:
+ Queering job status...OK
+ Retrieving results...OK
+ Testing alignment with presets:
+ Aligning with preset 'Protein alignment(Fastest speed)'... OK
+ Aligning with preset 'Nucleotide alignment(Fastest speed)'... OK
+ Aligning with preset 'Huge alignments (speed-oriented)'... OK
+ Queering presets...OK
+ Queering Parameters...OK
+ Queering Limits...OK
+ Queering Local Engine Limits...OK
+ Check is completed service MuscleWS IS WORKING
An example of the response of a web service which is deployed but is not operating is below:

+

Connecting to service ProbconsWS on http://localhost:8080/ws ... OK
+ Testing alignment with default parameters:FAILED
+ Service ProbconsWS IS NOT FUNCTIONAL
If the web server did not respond the message looks like following: Connecting to service TcoffeeWS on http://localhost:8080/ws ... FAILED

+

Running many JABAWS instances on the same server

+

JABAWS is supplied as a Web Application aRchive which can be dealt with as any other web applications. So it is perfectly possible to run two JABAWS instances from the same server. Just make two different contexts on your application server and unpack JABAWS in both of them. For example if your server name is http://www.align.ac.uk, and the context names are public and private. Than one group of users could be given a URL http://www.align.ac.uk/public and another http://www.align.ac.uk/private. These contexts will be served by two independent JABAWS instances, and could be configured differently. If you keep local engine enabled, make sure you reduce the number of threads local engine is allowed to use to avoid overloading the server. Alternatively two completely separate web application server instances (e.g. Apache-Tomcat) could be used. This will give you a better resilience and more flexibility in memory settings.

+

JABAWS on a single server

+

You can run JABAWS on a single server. Obviously the capacity will be limited, but it may be sufficient for a small lab. Installed on a single server, JABAWS executes tasks in parallel, so the more cores the server has the more requests it will be able to handle.

+

JABAWS supported cluster batch management systems

+

JABAWS uses DRMAA v. 1.0 library to send and manage jobs on the cluster. DRMAA supports many different cluster job management systems. Namely Sun Grid Engine, Condor, PBS, GridWay, Globus 2/4, PBSPro, LSF. For up to date information please consult DRMAA web site. We found that DRMAA implementation differ from platform to platform and were trying to use only the basic functions. We have only tested JABAWS on Sun Grid Engine v 6.2. Please let use know if you have any experience of running JABAWS on other platforms.

+

Manually deploying JABAWS application on Apache-Tomcat

+

To stop Tomcat from automatically undeploying your application if the war file is removed use an explicit application descriptor. It could come in different flavors, the one I prefer is to drop a context descriptor file into <tomcatRoot>conf/Catalina/localhost directory. Name your context file the same as your application folder e.g. if your JABAWS resides in webappl/jabaws folder, then call the context file jabaws.xml. Below is an example of content this file might have.

+

<?xml version="1.0" encoding="UTF-8"?>
+ <Context antiResourceLocking="false" privileged="true" />

+

This should be sufficient to prevent Tomcat from removing your JABAWS from WEBAPPS. For more information about the Tomcat deployer read this documentation on the Apache-Tomcat web site.

+

Apache-Tomcat fails to deploy jabaws.war file

+
    +
  • Make sure Tomcat has sufficient access rights to read your war file.
  • +
  • Restart the Tomcat, sometimes it will not restart after the new war file is added without restart
  • +
  • If Tomcat still refuses to unpack the war file, unpack it manually into web application folder (the war file is just a zip archive). Restart the Tomcat.
  • +
+
+ +
+
+ + + + + + + diff --git a/website/man_stats.html b/website/v_2_1_0/man_stats.html similarity index 98% rename from website/man_stats.html rename to website/v_2_1_0/man_stats.html index c12b591..adbdcff 100644 --- a/website/man_stats.html +++ b/website/v_2_1_0/man_stats.html @@ -1,167 +1,167 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS): Manual - - - - - - - -
- - - - - -
- - - -
-

JABAWS MANUAL

- -

JABAWS Usage Statistics

- -

Summary of Usage

-

JABAWS comes with a web application for visualizing usage statistics. The screenshot below shows the main page of this application. The individual month is linked to detailed usage statistics (described later). Please note, that the links to the detailed monthly statistics are only available for authenticated users in the role admin. There is a link at the bottom of the page that lets you login, if you have not done so.

-

If you are using JABAWS VA (Virtual Appliance) then the username is jabaws and password is not defined, i.e. empty.

-

If you have deployed a JABAWS WAR file, then please see the configuring privileged access for Tomcat web application server section for further details.

-

JABAWS usage statistics

-

The table contains the number of jobs processed by JABAWS per month, for the whole period when the statistics was collected

-

For each month the table contains the following information.

-
    -
  • Month - the period of time for which statistics is displayed. For example Jan 2011 means period of time from the first of January to the first of February
  • -
  • Total - the total number of jobs accepted by JABAWS
  • -
  • Incomplete - the number of jobs for which the result file was not found or was empty excluding cancelled
  • -
  • Cancelled - the number of jobs cancelled by the user
  • -
  • Abandoned - the number of jobs which result(s) were not collected
  • -
-

The summary for each column is displayed in the last row of the table.

-

Authentication

-

Authentication lets you see the detailed usage statistics. If you are using JABAWS VA (Virtual Appliance) then the username is jabaws and password is not defined, i.e. empty. In other cases you need to ask your system administrator for it.

-

Detailed Usage Statistic

-

Detailed execution statistics for each month is available for authenticated users only.

-

JABAWS one month usage statistics

-

Each table contains the number of jobs processed by JABAWS during the period of time specified in the title:

-
    -
  • The "All Jobs" table contains the summary of all jobs
  • -
  • "Local Jobs" table - contains the summary of the jobs calculated by the local engine
  • -
  • "Cluster Jobs" table - contains the summary of the jobs calculated by the cluster
  • -
-Each table contains the following information for each web service: -
    -
  • Total - the total number of jobs accepted by a particular JABA service
  • -
  • Incomplete - the number of jobs for which the result file was not found or was empty excluding cancelled
  • -
  • Cancelled - the number of jobs cancelled by the user
  • -
  • Abandoned - the number of jobs which result(s) were not collected
  • -
-

Job List

-

Please note that if you deployed JABAWS WAR, in order to be able to navigate to the job directory from this view, the application server may need to be configured. Please see Configuring JABAWS execution statistics section for further details.

-

JABAWS - job list

-

Columns:

-
    -
  • JobID - the JABAWS job id, unique for every job
  • -
  • Cluster JobID - cluster job id
  • -
  • InputSize - input size in bytes
  • -
  • ResultSize - result size in bytes
  • -
  • Runtime (s) - job's runtime in seconds
  • -
  • Start time (s)- job's start time and date
  • -
  • Finish time (s)- job's finish time and date
  • -
  • isCancelled - whether the job was cancelled
  • -
  • isCollected - whether the job was collected. False for the jobs that has been initiated but which results has never been retrieved
  • -
  • isFinished - whether the job has finished. This does not necessarily mean that the job has produced the result. The job can sometime finish in failure
  • -
-

JABAWS Job Directory Content

-

JABAWS- job details

-

STARTED and FINISHED files contain Unix timestamp - when the job was started and completed respectively. STARTED is replaced by SUBMITTED if the job has been submitted to the cluster, as opposed to executed locally, on the server.

-

COLLECTED file is empty and indicates that the job results were collected by the user. Due to asynchronous nature of the job it is possible that the job was started and finished, but the results has never been requested.

-

RunnerConfig.xml file contains a complete description of the job and JABAWS can restart the job based on this description.

-

procError.txt and procOutput.txt files contains the content of the standard out and standard error streams of the process.

-

result.txt file contains the results.

-

input.txt file contains input into the process.

-

There are maybe other files depending on the nature of the job, but the one described above will be present in most cases. In this example, stat.log file stories the execution statistics generated by (clustal executable in this example) process.

-

If you have deployed JABAWS WAR file or made changes to JABAWS configuration you may need to make a few changes to the Tomcat configuration to be able to see the content of the job directory. Please see Configuring JABAWS execution statistics section for further details.

-

Configuring JABAWS execution statistics

-

JABAWS execution statistics is a multi-component system. First is a crawler whose job is to collect and preprocess the statistics from the job temporary directories and record the collected statistics into the database. The second part of the system is a web application whose job is to visualise the statistics from the database.

-

It is possible to enable/disable the statistics collector by changing the following properties in the conf/Cluster.engine.properties and conf/Local.engine.properties files.

-

# Enable/disable cluster statistics collector true = enable, false = disable
- cluster.stat.collector.enable=false -
- # Maximum amount of time the job is considered be running in hours. Optional defaults to 7 days (168h)
- cluster.stat.maxruntime=24

-

# Enable/disable cluster statistics collector true = enable, false = disable
- local.stat.collector.enable=true -
- # Maximum amount of time the job is considered to be running in hours. Optional defaults to 24 hours
- local.stat.maxruntime=6

-

If the statistics collector is enabled then the crawler starts automatically soon after (10 minutes for local engine, and 60 minutes for cluster engine) the JABAWS web application and will be collecting the execution statistics every 24 hours after the start.

-

The details of the job are only available if the job temporary directory is located within a JABAWS web application. If not, the system administrator can create a symbolic link pointing to the temporary job directories outside of a web application and configure the application server to allow navigation to the links.  For the Tomcat application server the context configuration file should be created and copied to the <TOMCAT_ROOT>/conf/Catalina/localhost directory. The name of the file should be the same as the web application context name, for example "jabaws.xml" for jabaws. Where the TOMCAT_ROOT is the location of the Tomcat web application server. Here is an example of such a file:

-

<?xml version="1.0" encoding="UTF-8"?>
-<Context antiResourceLocking="false" privileged="true" allowLinking="true"/>

-

The key option here is this: allowLinking="true". Please also make sure that you have defined the user in role "admin" as described below.

-

Configuring a privileged access for Tomcat web application server

-

Access to configuration files, detailed job execution statistics and job directories are allowed only for authenticated users in role "admin".

-

If you use Tomcat, then the simplest way to set up privileged access is to use a plain text configuration file conf/tomcat-user.xml. Here is an example of such configuration file defining user "peter" in role "admin". <tomcat-users>
- <role rolename="admin"/>
- <user username="peter" password="your password here " roles="admin"/>
- </tomcat-users>

-

For more information on users and roles please consult Apache-Tomcat help pages.

-


-

-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS): Manual + + + + + + + +
+ + + + + +
+ + + +
+

JABAWS MANUAL

+ +

JABAWS Usage Statistics

+ +

Summary of Usage

+

JABAWS comes with a web application for visualizing usage statistics. The screenshot below shows the main page of this application. The individual month is linked to detailed usage statistics (described later). Please note, that the links to the detailed monthly statistics are only available for authenticated users in the role admin. There is a link at the bottom of the page that lets you login, if you have not done so.

+

If you are using JABAWS VA (Virtual Appliance) then the username is jabaws and password is not defined, i.e. empty.

+

If you have deployed a JABAWS WAR file, then please see the configuring privileged access for Tomcat web application server section for further details.

+

JABAWS usage statistics

+

The table contains the number of jobs processed by JABAWS per month, for the whole period when the statistics was collected

+

For each month the table contains the following information.

+
    +
  • Month - the period of time for which statistics is displayed. For example Jan 2011 means period of time from the first of January to the first of February
  • +
  • Total - the total number of jobs accepted by JABAWS
  • +
  • Incomplete - the number of jobs for which the result file was not found or was empty excluding cancelled
  • +
  • Cancelled - the number of jobs cancelled by the user
  • +
  • Abandoned - the number of jobs which result(s) were not collected
  • +
+

The summary for each column is displayed in the last row of the table.

+

Authentication

+

Authentication lets you see the detailed usage statistics. If you are using JABAWS VA (Virtual Appliance) then the username is jabaws and password is not defined, i.e. empty. In other cases you need to ask your system administrator for it.

+

Detailed Usage Statistic

+

Detailed execution statistics for each month is available for authenticated users only.

+

JABAWS one month usage statistics

+

Each table contains the number of jobs processed by JABAWS during the period of time specified in the title:

+
    +
  • The "All Jobs" table contains the summary of all jobs
  • +
  • "Local Jobs" table - contains the summary of the jobs calculated by the local engine
  • +
  • "Cluster Jobs" table - contains the summary of the jobs calculated by the cluster
  • +
+Each table contains the following information for each web service: +
    +
  • Total - the total number of jobs accepted by a particular JABA service
  • +
  • Incomplete - the number of jobs for which the result file was not found or was empty excluding cancelled
  • +
  • Cancelled - the number of jobs cancelled by the user
  • +
  • Abandoned - the number of jobs which result(s) were not collected
  • +
+

Job List

+

Please note that if you deployed JABAWS WAR, in order to be able to navigate to the job directory from this view, the application server may need to be configured. Please see Configuring JABAWS execution statistics section for further details.

+

JABAWS - job list

+

Columns:

+
    +
  • JobID - the JABAWS job id, unique for every job
  • +
  • Cluster JobID - cluster job id
  • +
  • InputSize - input size in bytes
  • +
  • ResultSize - result size in bytes
  • +
  • Runtime (s) - job's runtime in seconds
  • +
  • Start time (s)- job's start time and date
  • +
  • Finish time (s)- job's finish time and date
  • +
  • isCancelled - whether the job was cancelled
  • +
  • isCollected - whether the job was collected. False for the jobs that has been initiated but which results has never been retrieved
  • +
  • isFinished - whether the job has finished. This does not necessarily mean that the job has produced the result. The job can sometime finish in failure
  • +
+

JABAWS Job Directory Content

+

JABAWS- job details

+

STARTED and FINISHED files contain Unix timestamp - when the job was started and completed respectively. STARTED is replaced by SUBMITTED if the job has been submitted to the cluster, as opposed to executed locally, on the server.

+

COLLECTED file is empty and indicates that the job results were collected by the user. Due to asynchronous nature of the job it is possible that the job was started and finished, but the results has never been requested.

+

RunnerConfig.xml file contains a complete description of the job and JABAWS can restart the job based on this description.

+

procError.txt and procOutput.txt files contains the content of the standard out and standard error streams of the process.

+

result.txt file contains the results.

+

input.txt file contains input into the process.

+

There are maybe other files depending on the nature of the job, but the one described above will be present in most cases. In this example, stat.log file stories the execution statistics generated by (clustal executable in this example) process.

+

If you have deployed JABAWS WAR file or made changes to JABAWS configuration you may need to make a few changes to the Tomcat configuration to be able to see the content of the job directory. Please see Configuring JABAWS execution statistics section for further details.

+

Configuring JABAWS execution statistics

+

JABAWS execution statistics is a multi-component system. First is a crawler whose job is to collect and preprocess the statistics from the job temporary directories and record the collected statistics into the database. The second part of the system is a web application whose job is to visualise the statistics from the database.

+

It is possible to enable/disable the statistics collector by changing the following properties in the conf/Cluster.engine.properties and conf/Local.engine.properties files.

+

# Enable/disable cluster statistics collector true = enable, false = disable
+ cluster.stat.collector.enable=false +
+ # Maximum amount of time the job is considered be running in hours. Optional defaults to 7 days (168h)
+ cluster.stat.maxruntime=24

+

# Enable/disable cluster statistics collector true = enable, false = disable
+ local.stat.collector.enable=true +
+ # Maximum amount of time the job is considered to be running in hours. Optional defaults to 24 hours
+ local.stat.maxruntime=6

+

If the statistics collector is enabled then the crawler starts automatically soon after (10 minutes for local engine, and 60 minutes for cluster engine) the JABAWS web application and will be collecting the execution statistics every 24 hours after the start.

+

The details of the job are only available if the job temporary directory is located within a JABAWS web application. If not, the system administrator can create a symbolic link pointing to the temporary job directories outside of a web application and configure the application server to allow navigation to the links.  For the Tomcat application server the context configuration file should be created and copied to the <TOMCAT_ROOT>/conf/Catalina/localhost directory. The name of the file should be the same as the web application context name, for example "jabaws.xml" for jabaws. Where the TOMCAT_ROOT is the location of the Tomcat web application server. Here is an example of such a file:

+

<?xml version="1.0" encoding="UTF-8"?>
+<Context antiResourceLocking="false" privileged="true" allowLinking="true"/>

+

The key option here is this: allowLinking="true". Please also make sure that you have defined the user in role "admin" as described below.

+

Configuring a privileged access for Tomcat web application server

+

Access to configuration files, detailed job execution statistics and job directories are allowed only for authenticated users in role "admin".

+

If you use Tomcat, then the simplest way to set up privileged access is to use a plain text configuration file conf/tomcat-user.xml. Here is an example of such configuration file defining user "peter" in role "admin". <tomcat-users>
+ <role rolename="admin"/>
+ <user username="peter" password="your password here " roles="admin"/>
+ </tomcat-users>

+

For more information on users and roles please consult Apache-Tomcat help pages.

+


+

+
+ +
+
+ + + + + + + diff --git a/website/manual_qs_amazon.html b/website/v_2_1_0/manual_qs_amazon.html similarity index 98% rename from website/manual_qs_amazon.html rename to website/v_2_1_0/manual_qs_amazon.html index 03cf6fb..5e8a3fe 100644 --- a/website/manual_qs_amazon.html +++ b/website/v_2_1_0/manual_qs_amazon.html @@ -1,92 +1,92 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS) manual - getting started - - - - - - - -
- - - -
- - - - -
-

Getting Started

-

Choose a JABAWS distribution

- - - - - - - - - - - - - - - - - - - - - -
I want to use JABAWS for...Quick Guide
Running Muptiple Sequence Alignments through Jalview on my own computerJABAWS Virtual Appliance (VA)
Running JABAWS on the cloud, for one or many usersJABAWS on the Amazon cloud
Running JABAWS for my group, lab, or organization on the local infrastructure JABAWS Web Application aRchive (WAR)
Accessing a JABAWS server from my own codeJABAWS Java Client
- - - -

Running JABAWS in the Amazon Cloud

-
    -
  1. Create Amazon Web Services account.
  2. -
  3. Configure JABAWS either on the Amazon EC2 cloud or on Amazon Elastic Beanstalk
  4. -
-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS) manual - getting started + + + + + + + +
+ + + +
+ + + + +
+

Getting Started

+

Choose a JABAWS distribution

+ + + + + + + + + + + + + + + + + + + + + +
I want to use JABAWS for...Quick Guide
Running Muptiple Sequence Alignments through Jalview on my own computerJABAWS Virtual Appliance (VA)
Running JABAWS on the cloud, for one or many usersJABAWS on the Amazon cloud
Running JABAWS for my group, lab, or organization on the local infrastructure JABAWS Web Application aRchive (WAR)
Accessing a JABAWS server from my own codeJABAWS Java Client
+ + + +

Running JABAWS in the Amazon Cloud

+
    +
  1. Create Amazon Web Services account.
  2. +
  3. Configure JABAWS either on the Amazon EC2 cloud or on Amazon Elastic Beanstalk
  4. +
+
+ +
+
+ + + + + + + diff --git a/website/manual_qs_client.html b/website/v_2_1_0/manual_qs_client.html similarity index 97% rename from website/manual_qs_client.html rename to website/v_2_1_0/manual_qs_client.html index afb97c0..634a858 100644 --- a/website/manual_qs_client.html +++ b/website/v_2_1_0/manual_qs_client.html @@ -1,103 +1,103 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS) manual - getting started - - - - - - - -
- - - -
- - - - -
-

Getting Started

-

Choose a JABAWS distribution

- - - - - - - - - - - - - - - - - - - - - -
I want to use JABAWS for...Quick Guide
Running Muptiple Sequence Alignments through Jalview on my own computerJABAWS Virtual Appliance (VA)
Running JABAWS on the cloud, for one or many usersJABAWS on the Amazon cloud
Running JABAWS for my group, lab, or organization on the local infrastructure JABAWS Web Application aRchive (WAR)
Accessing a JABAWS server from my own codeJABAWS Java Client
- - -

The JABAWS command line client

- -

- This is a single java archive which contains the JABAWS command line client. It requires Java - version 1.6 to run, and allows anyone who wants to connect to and to use JABAWS from their own - software. You can read more about how to use command line client in - the CMD Client section of the manual. You can also get command line help by changing to - the directory where you downloaded the client jar, and typing:

-
    -
  • java -jar jaba-client.jar
  • -
-

- A JABA Web Services are WS-I compliant. This means that you can access them from any - language that has libraries or functions for consuming interoperable SOAP web services. - -

-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS) manual - getting started + + + + + + + +
+ + + +
+ + + + +
+

Getting Started

+

Choose a JABAWS distribution

+ + + + + + + + + + + + + + + + + + + + + +
I want to use JABAWS for...Quick Guide
Running Muptiple Sequence Alignments through Jalview on my own computerJABAWS Virtual Appliance (VA)
Running JABAWS on the cloud, for one or many usersJABAWS on the Amazon cloud
Running JABAWS for my group, lab, or organization on the local infrastructure JABAWS Web Application aRchive (WAR)
Accessing a JABAWS server from my own codeJABAWS Java Client
+ + +

The JABAWS command line client

+ +

+ This is a single java archive which contains the JABAWS command line client. It requires Java + version 1.6 to run, and allows anyone who wants to connect to and to use JABAWS from their own + software. You can read more about how to use command line client in + the CMD Client section of the manual. You can also get command line help by changing to + the directory where you downloaded the client jar, and typing:

+
    +
  • java -jar jaba-client.jar
  • +
+

+ A JABA Web Services are WS-I compliant. This means that you can access them from any + language that has libraries or functions for consuming interoperable SOAP web services. + +

+
+ +
+
+ + + + + + + diff --git a/website/manual_qs_va.html b/website/v_2_1_0/manual_qs_va.html similarity index 98% rename from website/manual_qs_va.html rename to website/v_2_1_0/manual_qs_va.html index 3ba5d80..da19e6f 100644 --- a/website/manual_qs_va.html +++ b/website/v_2_1_0/manual_qs_va.html @@ -1,108 +1,108 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS) manual - getting started - - - - - - - -
- - - -
- - - -
-

Getting Started

-

Choose a JABAWS distribution

- - - - - - - - - - - - - - - - - - - - - -
I want to use JABAWS for...Quick Guide
Running Muptiple Sequence Alignments through Jalview on my own computerJABAWS Virtual Appliance (VA)
Running JABAWS on the cloud, for one or many usersJABAWS on the Amazon cloud
Running JABAWS for my group, lab, or organization on the local infrastructure JABAWS Web Application aRchive (WAR)
Accessing a JABAWS server from my own codeJABAWS Java Client
- - -

Running JABAWS on your local machine

-
-

-The Virtual Appliance (VA) package allows you to run a JABAWS server installed on TurnKey Linux as a -virtual machine on your laptop or desktop computer. A complete guide -to the JABAWS VA is given in the manual, but for the impatient, a brief instructions are given below: -

-

If you work on Windows, Linux or Unix

-
    -
  1. download and install VMWare Player.
  2. -
  3. Unpack the JABAWS virtual appliance and open it with VMware Player.
  4. -
-

If you work on Mac do the same using VMware Fusion, or for free alternative use a WAR JABAWS package.

-
-

Testing

-

To check that your JABAWS virtual appliance is working visit the Services Status page available from the main JABAWS menu. For this enter the JABAWS URL for your new server into a web browser. This is shown once the appliance is booted up.

-

Alternatively you can use Jalview to complete the testing.

-
  1. Launch the desktop version of Jalview
  2. -
  3. Open the Jalview desktop's preferences panel (from the Tools->Preferences menu option), select the Webservices panel and press the New Service URL button.
  4. -
  5. Enter the JABAWS URL for your new server. This is shown once the appliance is booted up.
  6. -
-
-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS) manual - getting started + + + + + + + +
+ + + +
+ + + +
+

Getting Started

+

Choose a JABAWS distribution

+ + + + + + + + + + + + + + + + + + + + + +
I want to use JABAWS for...Quick Guide
Running Muptiple Sequence Alignments through Jalview on my own computerJABAWS Virtual Appliance (VA)
Running JABAWS on the cloud, for one or many usersJABAWS on the Amazon cloud
Running JABAWS for my group, lab, or organization on the local infrastructure JABAWS Web Application aRchive (WAR)
Accessing a JABAWS server from my own codeJABAWS Java Client
+ + +

Running JABAWS on your local machine

+
+

+The Virtual Appliance (VA) package allows you to run a JABAWS server installed on TurnKey Linux as a +virtual machine on your laptop or desktop computer. A complete guide +to the JABAWS VA is given in the manual, but for the impatient, a brief instructions are given below: +

+

If you work on Windows, Linux or Unix

+
    +
  1. download and install VMWare Player.
  2. +
  3. Unpack the JABAWS virtual appliance and open it with VMware Player.
  4. +
+

If you work on Mac do the same using VMware Fusion, or for free alternative use a WAR JABAWS package.

+
+

Testing

+

To check that your JABAWS virtual appliance is working visit the Services Status page available from the main JABAWS menu. For this enter the JABAWS URL for your new server into a web browser. This is shown once the appliance is booted up.

+

Alternatively you can use Jalview to complete the testing.

+
  1. Launch the desktop version of Jalview
  2. +
  3. Open the Jalview desktop's preferences panel (from the Tools->Preferences menu option), select the Webservices panel and press the New Service URL button.
  4. +
  5. Enter the JABAWS URL for your new server. This is shown once the appliance is booted up.
  6. +
+
+
+ +
+
+ + + + + + + diff --git a/website/manual_qs_war.html b/website/v_2_1_0/manual_qs_war.html similarity index 98% rename from website/manual_qs_war.html rename to website/v_2_1_0/manual_qs_war.html index d128e23..ad7b2ba 100644 --- a/website/manual_qs_war.html +++ b/website/v_2_1_0/manual_qs_war.html @@ -1,125 +1,125 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS) manual - getting started - - - - - - - -
- - - -
- - - - -
-

Getting Started

-

Choose a JABAWS distribution

- - - - - - - - - - - - - - - - - - - - - -
I want to use JABAWS for...Quick Guide
Running Muptiple Sequence Alignments through Jalview on my own computerJABAWS Virtual Appliance (VA)
Running JABAWS on the cloud, for one or many usersJABAWS on the Amazon cloud
Running JABAWS for my group, lab, or organization on the local infrastructure JABAWS Web Application aRchive (WAR)
Accessing a JABAWS server from my own codeJABAWS Java Client
- - - -

Installing A JABAWS Server Web Application Archive (WAR) package

-

- This is for anyone who wants to run JABAWS for their group, lab or organization, or wants to enable - their local JABA server to use the cluster or perform very large tasks. -

- -
    -
  1. Download the JABAWS WAR file
  2. -
  3. Download and install Apache-Tomcat.
    - You will need at least Tomcat version 5.5 of (we would recommend version 7.0) and at least Java 1.6 (i.e. JAVA 6). -
  4. -
  5. Drop the JABAWS WAR file into tomcat/webapps directory.
  6. -
  7. (Re)start the Tomcat.
  8. -
  9. Once the tomcat has started, it should automatically unpack the WAR into the webapps directory (if it doesn't, then you'll need to do this manually, it's just a zip archive in the end).
  10. -
  11. If you are on Mac or other unix-like architecture with GNU compilers available or you'd like to get a maximum performance
    - cd to webapps/jabaws/binaries/src/ - and execute ./compilebin.sh script to compile all binaries JABAWS depends on. -
  12. -
- -

Testing

-

You can test that your JABAWS server is working in several ways.

-
    -
  1. Visit Services Status page available from the JABAWS main page using your web browser.
  2. - -
  3. If you are working on the command line, then use the command line client shipped with the JABAWS war to test it by running: - java -jar <Path to tomcat WebApp directory>/jabaws/WEB-INF/lib/jaba-client.jar -h=http://localhost:8080/jabaws - In this example we assumed that your JABAWS server URL is http://localhost:8080 and JABAWS context path is jabaws -
  4. -
  5. Alternately, you can point Jalview at your new server: -
      -
    • Launch the desktop version of Jalview
    • -
    • Open the Jalview desktop's preferences panel (from the Tools->Preferences menu option), select the Webservices panel and press the New Service URL button.
    • -
    • Enter the URL for the tomcat server, including the context path for the JABAWS web app (e.g. http://localhost:8080/jabaws).
    • -
    -
- - -
- -
- - - - - -
- - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS) manual - getting started + + + + + + + +
+ + + +
+ + + + +
+

Getting Started

+

Choose a JABAWS distribution

+ + + + + + + + + + + + + + + + + + + + + +
I want to use JABAWS for...Quick Guide
Running Muptiple Sequence Alignments through Jalview on my own computerJABAWS Virtual Appliance (VA)
Running JABAWS on the cloud, for one or many usersJABAWS on the Amazon cloud
Running JABAWS for my group, lab, or organization on the local infrastructure JABAWS Web Application aRchive (WAR)
Accessing a JABAWS server from my own codeJABAWS Java Client
+ + + +

Installing A JABAWS Server Web Application Archive (WAR) package

+

+ This is for anyone who wants to run JABAWS for their group, lab or organization, or wants to enable + their local JABA server to use the cluster or perform very large tasks. +

+ +
    +
  1. Download the JABAWS WAR file
  2. +
  3. Download and install Apache-Tomcat.
    + You will need at least Tomcat version 5.5 of (we would recommend version 7.0) and at least Java 1.6 (i.e. JAVA 6). +
  4. +
  5. Drop the JABAWS WAR file into tomcat/webapps directory.
  6. +
  7. (Re)start the Tomcat.
  8. +
  9. Once the tomcat has started, it should automatically unpack the WAR into the webapps directory (if it doesn't, then you'll need to do this manually, it's just a zip archive in the end).
  10. +
  11. If you are on Mac or other unix-like architecture with GNU compilers available or you'd like to get a maximum performance
    + cd to webapps/jabaws/binaries/src/ + and execute ./compilebin.sh script to compile all binaries JABAWS depends on. +
  12. +
+ +

Testing

+

You can test that your JABAWS server is working in several ways.

+
    +
  1. Visit Services Status page available from the JABAWS main page using your web browser.
  2. + +
  3. If you are working on the command line, then use the command line client shipped with the JABAWS war to test it by running: + java -jar <Path to tomcat WebApp directory>/jabaws/WEB-INF/lib/jaba-client.jar -h=http://localhost:8080/jabaws + In this example we assumed that your JABAWS server URL is http://localhost:8080 and JABAWS context path is jabaws +
  4. +
  5. Alternately, you can point Jalview at your new server: +
      +
    • Launch the desktop version of Jalview
    • +
    • Open the Jalview desktop's preferences panel (from the Tools->Preferences menu option), select the Webservices panel and press the New Service URL button.
    • +
    • Enter the URL for the tomcat server, including the context path for the JABAWS web app (e.g. http://localhost:8080/jabaws).
    • +
    +
+ + +
+ +
+ + + + + +
+ + diff --git a/website/print.css b/website/v_2_1_0/print.css similarity index 94% rename from website/print.css rename to website/v_2_1_0/print.css index aaa5e5f..5847dfb 100644 --- a/website/print.css +++ b/website/v_2_1_0/print.css @@ -1,192 +1,192 @@ - -#banner { background:none !important; color:#000000 !important; text-align:center; } - -#panel { display:none !important } - -#content { margin:0.5em; border-bottom:solid 1px #6994af; } - -#page { margin: 0.5em; } - -#wrapper { background:none; } - -ul { - list-style-type: circle; -} - - -#panel a:link, a:visited { - text-decoration: none; - display:block; - line-height: 1em; - padding:10px; - color:#000000; - text-decoration:none; - } - -#panel a:hover { - background-color: transparent; - text-decoration: underline; - } - - -strong { - font-weight:bold; - color:#003366; -} - -pre { - font-family:Arial, Helvetica, sans-serif; -} - -p { - line-height: 1.4em; -} - -.hightlight { - font-style:italic; - font-family:"Courier New", Courier, monospace; -} - -.code { - font-size-adjust:0.4; - color:black; - background-color:#F5F5F5; - font-family:"Courier New",Courier,monospace; - font-style:normal; - margin:1em 0; - padding: 0.5em; - border: 1px dashed black; -} - - -.box { - font-size-adjust:0.5; - color:black; - background-color:#F5F5F5; - font-family:Arial, Helvetica, sans-serif; - font-style:normal; - margin:1em 0; - padding: 0.5em; - border: 1px solid black; - display:block; -} - -.u { text-decoration: underline; } -.headeru { text-shadow: black 0.05em 0.05em 0.01em ;} - -/* Table styles */ -table { - border-collapse: collapse; - border: 1px solid #666; - margin: 20px 0 20px 0; - width: 100%; -} -th, td { - margin: 2px 4px 2px 4px; - padding: 0 5px; - text-align: left; - vertical-align: top; - border: 1px solid #666; -} - -table caption { - font: 1.5em Georgia, "Times New Roman", Times, serif; - padding: 1em; - background-color: #9c9; -} - -.mainheader { - font: 1.5em Georgia, "Times New Roman", Times, serif; - background-color: #9c9; - text-align:center; - line-height:1em; -} - -tr { - background-color: #eee; -} - -tr:nth-child(odd) { - background-color: #ccc; -} - - -span.directory { -background: transparent url(images/dir.gif) no-repeat scroll left center; -color:#666666; -font-family:"Courier New",Courier,monospace; -font-style:normal; -padding:0 0 0 15px; -} - -.attention { -color:#993333; -} - -.source { - border:1px solid #858789; - display:block; - margin:26px 0; - overflow:visible; -} - -/* OPEN state styles */ -.source .body { - background:#F5F5F5 none repeat scroll right 0; - color:#434546; - padding:7px 15px; -/* white-space:pre-wrap; */ - word-wrap:break-word; -} - -.source .header { - background:#E9EAEC url(images/minus.png) no-repeat scroll 98% center; - color:#3B3D3F; - cursor:pointer; - font-weight:bold; - height:30px; - line-height:30px; - padding:0 0 0 15px; -} - -/* CLOSED state styles */ -.source .body.collapsed { - display:block !important; -} - -.source .header.collapsed { - background:#E9EAEC url(images/plus.png) no-repeat scroll 98% center; - padding:0 15px 0 15px; -} - -#copyright { text-align:right; - color:#999999; - font-family:Verdana, Arial, Helvetica, sans-serif; - font-size:smaller; - line-height:1em; - } - -.body .code { - margin:0; - padding:0; - border:0; - font-family:"Courier New",Courier,monospace; - font-style:normal; -} - -.i { -font-style:italic; -} - -body { - font-family:Arial, Helvetica, sans-serif; - font-size: 9pt; - background-color: white; - line-height: 2em; -} - -h3 {border-bottom: 1px solid grey; margin-top: 2em; } - -#headtitle { margin:0; text-align:center; color:#003b62; font-weight:600;} - -h2 {margin:1.8em 0 0 0; color:#003b62; font-weight:600;} + +#banner { background:none !important; color:#000000 !important; text-align:center; } + +#panel { display:none !important } + +#content { margin:0.5em; border-bottom:solid 1px #6994af; } + +#page { margin: 0.5em; } + +#wrapper { background:none; } + +ul { + list-style-type: circle; +} + + +#panel a:link, a:visited { + text-decoration: none; + display:block; + line-height: 1em; + padding:10px; + color:#000000; + text-decoration:none; + } + +#panel a:hover { + background-color: transparent; + text-decoration: underline; + } + + +strong { + font-weight:bold; + color:#003366; +} + +pre { + font-family:Arial, Helvetica, sans-serif; +} + +p { + line-height: 1.4em; +} + +.hightlight { + font-style:italic; + font-family:"Courier New", Courier, monospace; +} + +.code { + font-size-adjust:0.4; + color:black; + background-color:#F5F5F5; + font-family:"Courier New",Courier,monospace; + font-style:normal; + margin:1em 0; + padding: 0.5em; + border: 1px dashed black; +} + + +.box { + font-size-adjust:0.5; + color:black; + background-color:#F5F5F5; + font-family:Arial, Helvetica, sans-serif; + font-style:normal; + margin:1em 0; + padding: 0.5em; + border: 1px solid black; + display:block; +} + +.u { text-decoration: underline; } +.headeru { text-shadow: black 0.05em 0.05em 0.01em ;} + +/* Table styles */ +table { + border-collapse: collapse; + border: 1px solid #666; + margin: 20px 0 20px 0; + width: 100%; +} +th, td { + margin: 2px 4px 2px 4px; + padding: 0 5px; + text-align: left; + vertical-align: top; + border: 1px solid #666; +} + +table caption { + font: 1.5em Georgia, "Times New Roman", Times, serif; + padding: 1em; + background-color: #9c9; +} + +.mainheader { + font: 1.5em Georgia, "Times New Roman", Times, serif; + background-color: #9c9; + text-align:center; + line-height:1em; +} + +tr { + background-color: #eee; +} + +tr:nth-child(odd) { + background-color: #ccc; +} + + +span.directory { +background: transparent url(images/dir.gif) no-repeat scroll left center; +color:#666666; +font-family:"Courier New",Courier,monospace; +font-style:normal; +padding:0 0 0 15px; +} + +.attention { +color:#993333; +} + +.source { + border:1px solid #858789; + display:block; + margin:26px 0; + overflow:visible; +} + +/* OPEN state styles */ +.source .body { + background:#F5F5F5 none repeat scroll right 0; + color:#434546; + padding:7px 15px; +/* white-space:pre-wrap; */ + word-wrap:break-word; +} + +.source .header { + background:#E9EAEC url(images/minus.png) no-repeat scroll 98% center; + color:#3B3D3F; + cursor:pointer; + font-weight:bold; + height:30px; + line-height:30px; + padding:0 0 0 15px; +} + +/* CLOSED state styles */ +.source .body.collapsed { + display:block !important; +} + +.source .header.collapsed { + background:#E9EAEC url(images/plus.png) no-repeat scroll 98% center; + padding:0 15px 0 15px; +} + +#copyright { text-align:right; + color:#999999; + font-family:Verdana, Arial, Helvetica, sans-serif; + font-size:smaller; + line-height:1em; + } + +.body .code { + margin:0; + padding:0; + border:0; + font-family:"Courier New",Courier,monospace; + font-style:normal; +} + +.i { +font-style:italic; +} + +body { + font-family:Arial, Helvetica, sans-serif; + font-size: 9pt; + background-color: white; + line-height: 2em; +} + +h3 {border-bottom: 1px solid grey; margin-top: 2em; } + +#headtitle { margin:0; text-align:center; color:#003b62; font-weight:600;} + +h2 {margin:1.8em 0 0 0; color:#003b62; font-weight:600;} diff --git a/website/prototype-1.6.0.3.js b/website/v_2_1_0/prototype-1.6.0.3.js similarity index 100% rename from website/prototype-1.6.0.3.js rename to website/v_2_1_0/prototype-1.6.0.3.js diff --git a/website/quick_start.html b/website/v_2_1_0/quick_start.html similarity index 97% rename from website/quick_start.html rename to website/v_2_1_0/quick_start.html index d4a512c..6401808 100644 --- a/website/quick_start.html +++ b/website/v_2_1_0/quick_start.html @@ -1,83 +1,83 @@ - - - - - - -Java Bioinformatics Analyses Web Services (JABAWS) manual - getting started - - - - - - - -
- - - -
- - - -
-

Getting Started

-

Choose a JABAWS distribution

- - - - - - - - - - - - - - - - - - - - - -
I want to use JABAWS for...Quick Guide
Running Muptiple Sequence Alignments through Jalview on my own computerJABAWS Virtual Appliance (VA)
Running JABAWS on the cloud, for one or many usersJABAWS on the Amazon cloud
Running JABAWS for my group, lab, or organization on the local infrastructure JABAWS Web Application aRchive (WAR)
Accessing a JABAWS server from my own codeJABAWS Java Client
-
- -
-
- - - - - - - + + + + + + +Java Bioinformatics Analyses Web Services (JABAWS) manual - getting started + + + + + + + +
+ + + +
+ + + +
+

Getting Started

+

Choose a JABAWS distribution

+ + + + + + + + + + + + + + + + + + + + + +
I want to use JABAWS for...Quick Guide
Running Muptiple Sequence Alignments through Jalview on my own computerJABAWS Virtual Appliance (VA)
Running JABAWS on the cloud, for one or many usersJABAWS on the Amazon cloud
Running JABAWS for my group, lab, or organization on the local infrastructure JABAWS Web Application aRchive (WAR)
Accessing a JABAWS server from my own codeJABAWS Java Client
+
+ +
+
+ + + + + + + diff --git a/website/ws.css b/website/v_2_1_0/ws.css similarity index 94% rename from website/ws.css rename to website/v_2_1_0/ws.css index 71add17..ade1242 100644 --- a/website/ws.css +++ b/website/v_2_1_0/ws.css @@ -1,389 +1,389 @@ -ul, ol { - margin-left:4em; - padding-left:0px; -} - -li { - margin-bottom:0em; -} - - -#banner { - background-color:white; -} - -#mainpagefeatures { - margin: 0 2em 0 2em; -} - -#wrapper #mainpagefeatures table, #wrapper #mainpagefeatures th, #wrapper #mainpagefeatures td, #wrapper #mainpagefeatures tr{ - border:none; - border-collapse:collapse; - background-color: #fff; - padding-bottom:2em; -} - -#jabaws_on_cloud img { - border:1px solid #6994AF; - clear:both; - margin: 2em 0; -} - -#wrapper #choicematrix table, #wrapper #choicematrix th, #wrapper #choicematrix td, #wrapper #choicematrix tr{ - border:1px solid grey; - background-color: #fff; - padding:1em; -} - -#wrapper #choicematrix th { - background-image:url(images/brickhead2.jpg); - background-repeat:repeat-x; -} - -.brick { - padding-bottom:1em; - border: 2px solid #999; - -webkit-border-radius:10px; - -moz-border-radius:10px; - border-radius: 20px; - background-image:url(images/brickhead2_line.jpg); - background-repeat:repeat-x; -} - -.brick_header { - display:block; - background:none; -} - -.brick_header h2 { - font-weight: bold; - border:none; - background:none; - margin: 0.7em 0 0 0.5em; -} - -.brick_content { - position:relative; - padding: 2em 1.5em 0em 1.5em; -} - -#content { - margin-left:170px; - border-bottom:solid 1px #6994af; - margin-right:0.9em; -} - -#page { - margin: 0; - background-color:#fff; -} - -#copyright { - text-align:right; - color:#999999; - font-family:Verdana, Arial, Helvetica, sans-serif; - font-size:smaller; - line-height:1em; - padding:0.3em 0.9em 1em 0; -} - -#wrapper { - background:url("images/panel_bg_long.png") repeat-y left top; - margin:0; - padding:0; -} - -ul { - list-style-type: circle; -} - - - -strong { - font-weight:bold; - color:#003366; -} - -pre { - font-family:Arial, Helvetica, sans-serif; -} - -p { - line-height: 1.4em; -} - -.i { - font-style:italic; -} - -.hightlight { - font-style:italic; - font-family:"Courier New", Courier, monospace; -} - -.code { - color:black; - background-color:#F5F5F5; - font-family:"Courier New",Courier,monospace; - font-style:normal; - margin:1em 0; - padding: 0.5em; - border: 1px dashed black; - display:block; -} - -.box { - color:black; - background-color:#F5F5F5; - font-family:Arial, Helvetica, sans-serif; - font-style:normal; - margin:1em 0; - padding: 0.5em; - border: 1px solid black; - display:block; -} - -.mid { - vertical-align:middle; - height:80px; - border:none; -} - -.u { - text-decoration: underline; -} - -.headeru { - text-shadow:0 1px 3px black; - border-bottom: 1px solid white; -} - -#banner h1 { - font-family:Helvetica, Arial, sans-serif; - white-space:nowrap; - color: white; - font-weight:bold; - text-shadow:0 1px 3px #100F0E; - font-size: 27px; -} - -h3 { - border-bottom: 1px solid grey; - margin-top: 2em; -} - -#headtitle { - margin:0; - padding-top:1em; - text-align:center; - color:#003b62; - font-weight:600; -} - -h2 { - margin:1.8em 0 0 0; - color:#003b62; - font-weight:600; -} - -/* Table styles */ -#wrapper table { - border-collapse: collapse; - border: 1px solid #666; - margin: 20px 0 20px 0; - width: 100%; -} - -#wrapper th, #wrapper td { - margin: 2px 4px 2px 4px; - padding: 0 5px; - text-align: left; - border: 1px solid #666; -} - -#wrapper table caption { - font: 1.5em Georgia, "Times New Roman", Times, serif; - padding: 1em; - background-color: #9c9; -} - -#wrapper tr { - background-color: #eee; -} - -#wrapper tr:nth-child(odd) { - background-color: #ccc; -} - -span.directory { - background: transparent url(images/dir.gif) no-repeat scroll left center; - color:#666666; - font-family:"Courier New",Courier,monospace; - font-style:normal; - padding:0 0 0 15px; -} - -.attention { - color:#993333; -} - -/* open/closed box related styles */ - -.source { - border:1px solid #858789; - display:block; - margin:26px 0; - overflow:visible; -} - -/* OPEN state styles */ -.source .body { - background:#F5F5F5 none repeat scroll right 0; - color:#434546; - padding:7px 15px; - white-space:normal; -} - -.source .header { - background:#E9EAEC url(images/minus.png) no-repeat scroll 98% center; - color:#3B3D3F; - cursor:pointer; - font-weight:bold; - height:30px; - line-height:30px; - padding:0 15px 0 15px; -} - -/* CLOSED state styles */ -.source .body.collapsed { - display:none; -} - -.source .header.collapsed { - background:#E9EAEC url(images/plus.png) no-repeat scroll 98% center; - padding:0 15px 0 15px; -} - -.body .code { - margin:0; - padding:0; - border:0; - font-family:"Courier New",Courier,monospace; - font-style:normal; -} - -body { - font-family:Arial, Helvetica, sans-serif; - font: 12px/170% Verdana; - background-image:url(images/matrix_bg6.jpg); - background-repeat:repeat; - line-height: 2em; - min-width: 760px; - max-width: 1100px; - margin:0 auto; -} - -#banner table { - border-collapse: collapse; - border: none; - padding:0; - margin:0; - line-height:0.5em; - color:white; - text-align:center; - vertical-align:middle; - width: 100%; -} - -#banner td.bg { - border-collapse: collapse; - background-image:url("images/banner_bg.gif"); - background-repeat: repeat-x; - background-color:transparent; - background-position:inherit; -} - -img.logo { - border:none; - margin:0; - padding:0; - display:inline - float:left; -} - -/***************************************************************************************/ -/************************************ panel styles *************************************/ -#panel { - width:160px; -/* margin-left: -150px;*/ - background:url("images/panel_bg_long.png") repeat-y ; - float:left; - font-family:Verdana, Arial, Helvetica, sans-serif; - padding-top:1em; -} - -#panel a:link, #panel a:visited { - line-height: 1em; - font-size: 12pt; - margin: 15px auto; - width: 95px; - text-align: center; -} - -#panel #supermenu a { - margin-left: 10px; -} - -#panel #submenu a { - margin-left: 30px; -} - -#panel #supersubmenu a { - margin-left: 25px; -} - -#panel #subsubmenu a { - margin-left: 40px; -} - -#panel a.newa { - color: #888888; - text-decoration: none; - background-color: rgba(219,87,5,1); - background-image:url("images/banner_bg.gif"); - font-family: 'Yanone Kaffeesatz'; - font-weight: 400; - display: block; - padding: 4px; - -webkit-border-radius: 6px; - -moz-border-radius: 6px; - border-radius: 6px; - -webkit-box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); - -moz-box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); - box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); -} - -#panel a.newpressed { - color: #FFFFFF; - text-decoration: none; - background-image:url("images/banner_bg.gif"); - background-color: #F5F5F5; - font-family: 'Yanone Kaffeesatz'; - font-weight: 700; - display: block; - padding: 4px; - -webkit-border-radius: 8px; - -moz-border-radius: 8px; - border-radius: 8px; - -webkit-box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); - -moz-box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); - box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); -} - -#panel a:active { - -webkit-box-shadow: 0px 3px 0px rgba(219,31,5,1), 0px 3px 6px rgba(0,0,0,.9); - -moz-box-shadow: 0px 3px 0px rgba(219,31,5,1), 0px 3px 6px rgba(0,0,0,.9); - box-shadow: 0px 3px 0px rgba(219,31,5,1), 0px 3px 6px rgba(0,0,0,.9); - position: relative; - top: 6px; -} +ul, ol { + margin-left:4em; + padding-left:0px; +} + +li { + margin-bottom:0em; +} + + +#banner { + background-color:white; +} + +#mainpagefeatures { + margin: 0 2em 0 2em; +} + +#wrapper #mainpagefeatures table, #wrapper #mainpagefeatures th, #wrapper #mainpagefeatures td, #wrapper #mainpagefeatures tr{ + border:none; + border-collapse:collapse; + background-color: #fff; + padding-bottom:2em; +} + +#jabaws_on_cloud img { + border:1px solid #6994AF; + clear:both; + margin: 2em 0; +} + +#wrapper #choicematrix table, #wrapper #choicematrix th, #wrapper #choicematrix td, #wrapper #choicematrix tr{ + border:1px solid grey; + background-color: #fff; + padding:1em; +} + +#wrapper #choicematrix th { + background-image:url(images/brickhead2.jpg); + background-repeat:repeat-x; +} + +.brick { + padding-bottom:1em; + border: 2px solid #999; + -webkit-border-radius:10px; + -moz-border-radius:10px; + border-radius: 20px; + background-image:url(images/brickhead2_line.jpg); + background-repeat:repeat-x; +} + +.brick_header { + display:block; + background:none; +} + +.brick_header h2 { + font-weight: bold; + border:none; + background:none; + margin: 0.7em 0 0 0.5em; +} + +.brick_content { + position:relative; + padding: 2em 1.5em 0em 1.5em; +} + +#content { + margin-left:170px; + border-bottom:solid 1px #6994af; + margin-right:0.9em; +} + +#page { + margin: 0; + background-color:#fff; +} + +#copyright { + text-align:right; + color:#999999; + font-family:Verdana, Arial, Helvetica, sans-serif; + font-size:smaller; + line-height:1em; + padding:0.3em 0.9em 1em 0; +} + +#wrapper { + background:url("images/panel_bg_long.png") repeat-y left top; + margin:0; + padding:0; +} + +ul { + list-style-type: circle; +} + + + +strong { + font-weight:bold; + color:#003366; +} + +pre { + font-family:Arial, Helvetica, sans-serif; +} + +p { + line-height: 1.4em; +} + +.i { + font-style:italic; +} + +.hightlight { + font-style:italic; + font-family:"Courier New", Courier, monospace; +} + +.code { + color:black; + background-color:#F5F5F5; + font-family:"Courier New",Courier,monospace; + font-style:normal; + margin:1em 0; + padding: 0.5em; + border: 1px dashed black; + display:block; +} + +.box { + color:black; + background-color:#F5F5F5; + font-family:Arial, Helvetica, sans-serif; + font-style:normal; + margin:1em 0; + padding: 0.5em; + border: 1px solid black; + display:block; +} + +.mid { + vertical-align:middle; + height:80px; + border:none; +} + +.u { + text-decoration: underline; +} + +.headeru { + text-shadow:0 1px 3px black; + border-bottom: 1px solid white; +} + +#banner h1 { + font-family:Helvetica, Arial, sans-serif; + white-space:nowrap; + color: white; + font-weight:bold; + text-shadow:0 1px 3px #100F0E; + font-size: 27px; +} + +h3 { + border-bottom: 1px solid grey; + margin-top: 2em; +} + +#headtitle { + margin:0; + padding-top:1em; + text-align:center; + color:#003b62; + font-weight:600; +} + +h2 { + margin:1.8em 0 0 0; + color:#003b62; + font-weight:600; +} + +/* Table styles */ +#wrapper table { + border-collapse: collapse; + border: 1px solid #666; + margin: 20px 0 20px 0; + width: 100%; +} + +#wrapper th, #wrapper td { + margin: 2px 4px 2px 4px; + padding: 0 5px; + text-align: left; + border: 1px solid #666; +} + +#wrapper table caption { + font: 1.5em Georgia, "Times New Roman", Times, serif; + padding: 1em; + background-color: #9c9; +} + +#wrapper tr { + background-color: #eee; +} + +#wrapper tr:nth-child(odd) { + background-color: #ccc; +} + +span.directory { + background: transparent url(images/dir.gif) no-repeat scroll left center; + color:#666666; + font-family:"Courier New",Courier,monospace; + font-style:normal; + padding:0 0 0 15px; +} + +.attention { + color:#993333; +} + +/* open/closed box related styles */ + +.source { + border:1px solid #858789; + display:block; + margin:26px 0; + overflow:visible; +} + +/* OPEN state styles */ +.source .body { + background:#F5F5F5 none repeat scroll right 0; + color:#434546; + padding:7px 15px; + white-space:normal; +} + +.source .header { + background:#E9EAEC url(images/minus.png) no-repeat scroll 98% center; + color:#3B3D3F; + cursor:pointer; + font-weight:bold; + height:30px; + line-height:30px; + padding:0 15px 0 15px; +} + +/* CLOSED state styles */ +.source .body.collapsed { + display:none; +} + +.source .header.collapsed { + background:#E9EAEC url(images/plus.png) no-repeat scroll 98% center; + padding:0 15px 0 15px; +} + +.body .code { + margin:0; + padding:0; + border:0; + font-family:"Courier New",Courier,monospace; + font-style:normal; +} + +body { + font-family:Arial, Helvetica, sans-serif; + font: 12px/170% Verdana; + background-image:url(images/matrix_bg6.jpg); + background-repeat:repeat; + line-height: 2em; + min-width: 760px; + max-width: 1100px; + margin:0 auto; +} + +#banner table { + border-collapse: collapse; + border: none; + padding:0; + margin:0; + line-height:0.5em; + color:white; + text-align:center; + vertical-align:middle; + width: 100%; +} + +#banner td.bg { + border-collapse: collapse; + background-image:url("images/banner_bg.gif"); + background-repeat: repeat-x; + background-color:transparent; + background-position:inherit; +} + +img.logo { + border:none; + margin:0; + padding:0; + display:inline + float:left; +} + +/***************************************************************************************/ +/************************************ panel styles *************************************/ +#panel { + width:160px; +/* margin-left: -150px;*/ + background:url("images/panel_bg_long.png") repeat-y ; + float:left; + font-family:Verdana, Arial, Helvetica, sans-serif; + padding-top:1em; +} + +#panel a:link, #panel a:visited { + line-height: 1em; + font-size: 12pt; + margin: 15px auto; + width: 95px; + text-align: center; +} + +#panel #supermenu a { + margin-left: 10px; +} + +#panel #submenu a { + margin-left: 30px; +} + +#panel #supersubmenu a { + margin-left: 25px; +} + +#panel #subsubmenu a { + margin-left: 40px; +} + +#panel a.newa { + color: #888888; + text-decoration: none; + background-color: rgba(219,87,5,1); + background-image:url("images/banner_bg.gif"); + font-family: 'Yanone Kaffeesatz'; + font-weight: 400; + display: block; + padding: 4px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); + -moz-box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); + box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); +} + +#panel a.newpressed { + color: #FFFFFF; + text-decoration: none; + background-image:url("images/banner_bg.gif"); + background-color: #F5F5F5; + font-family: 'Yanone Kaffeesatz'; + font-weight: 700; + display: block; + padding: 4px; + -webkit-border-radius: 8px; + -moz-border-radius: 8px; + border-radius: 8px; + -webkit-box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); + -moz-box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); + box-shadow: 0px 9px 0px #888888, 0px 9px 25px rgba(0,0,0,.7); +} + +#panel a:active { + -webkit-box-shadow: 0px 3px 0px rgba(219,31,5,1), 0px 3px 6px rgba(0,0,0,.9); + -moz-box-shadow: 0px 3px 0px rgba(219,31,5,1), 0px 3px 6px rgba(0,0,0,.9); + box-shadow: 0px 3px 0px rgba(219,31,5,1), 0px 3px 6px rgba(0,0,0,.9); + position: relative; + top: 6px; +}