Skip to end of metadata
Go to start of metadata

Overview

First public alpha version (v0.3.1) of the REST activity plugin for Taverna 2.2.1 was released on 13 September 2010.

The plugin in its current state provides a solid foundation for support of REST services within Taverna and can be used to access remote services via the four types of HTTP requests: GET, POST, PUT and DELETE. Configuration options of the plugin include MIME types of the sent and received data and the URL template that can have configurable parameters (with an individual input port created for each). The plugin integrates with the Credential Manager of the Workbench for added convenience when accessing secure web services.

Configuration and Features

REST plugin adds a new Template Service to the Service Panel; it needs to be configured before being used.

The main configuration parameter is the URL template. Any regular URL can be specified, in which case REST activity will use it for workflow execution with no changes. It is also possible to define configurable parameters in the URL template by enclosing fragments of the URL within curly braces ({ and }). REST activity will create an individual input port for each configurable parameter. The activity will then use values received through the input ports to replace all configurable parameter placeholders - generated URL will then be used to execute an HTTP request.

It is also necessary to select the type of HTTP (GET, POST, PUT or DELETE) request to perform on the specified URL template. MIME type for the HTTP "Accept" header can also be specified in order to notify the remote server of the preferred type of response data.

For POST and PUT requests another input port is created - REST activity used it to receive the data that will be transmitted as a request body of the HTTP message. Remote server can be notified of the MIME type of the data that is being sent by specifying the value of "Content-Type" HTTP header; this value implies whether the data is textual or binary, but it is possible to override that in the activity configuration window.

REST activity provides the following features:

  • transparent HTTP redirect handling (with the ability to see the URL of the last redirect);
  • incoming data analysis - if the "Content-Type" HTTP header of the HTTP message body received from the remote server begins with "text/...", REST activity treats data as textual and attempts to perform charset conversion (if the charset is specified in "Content-Type" header; alternatively, incoming data is treated as binary;
  • integration with Taverna Credential Manager for accessing secure REST services.

Further Development

Current version of the REST activity can be used as it is, however there are certain areas of improvement.

There are about 20 outstanding issues in Jira - http://www.mygrid.org.uk/dev/issues/browse/T2/component/10161/. These are mainly concerned with:

  • improvements to the UI of the activity configuration panel and contextual views;
  • proper URL-escaping of the URL template values of the configurable URL parameters;
  • better way of handling incoming data - a better way to decide whether the data is textual or binary is needed (currently, this issue makes the activity to treat certain kinds of XML data as binary).

It could also be useful to create a number of pre-configured REST services that could be used directly with no further configuration. An example of such pre-configured REST service could be one that queries BioCatalogue API for all services that are provided by the EBI and have term "Blast" in their title.

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.