Skip to content
Paul Pound edited this page Sep 16, 2013 · 20 revisions

2.1 Taverna server installation

Download the taverna server v2.4:

http://www.taverna.org.uk/download/server/2-4/

Follow the installation instructions:

http://dev.mygrid.org.uk/wiki/display/taverna/Installation+and+Configuration

2.2 Islandora Microservices installation

2.2.1 Introduction to SOAP

SOAP is a protocol for messaging between web services (e.g. Taverna). Web communication consists of passing simple strings back and forth, but complex web services like Taverna need to be able to express and understand strongly typed data. This is what SOAP is useful for - it can encode and decode data so that it can be sent across a network connection while retaining strong typing and object semantics. PEAR is PHP Extension and Application Repository. It’s a framework and distribution system for reusable PHP components.

2.2.2 Install PHP Pear Soap

Install pear : http://pear.php.net/manual/en/installation.php or make sure pear is installed.

Call the following command to install the current SOAP server Beta version which was tested with this system: pear install channel://pear.php.net/SOAP-0.13.0 SOAP

2.2.3 Install Islandora listener

  • cd /opt (or a suitable directory for installation)
  • Clone php_listeners from https://github.com/roblib/php_listeners.git to get the latest version php listener package. Make sure you are using the taverna-1.x branch
  • Edit the root config.xml (a sample version will be in your listeners directory). You will need to provide:
    • the location and user credentials for the Taverna server
    • the location and user credentials for the Fedora server
    • the JMS connection information
    • configure the logfile location
      • Make sure the log file is writable to both the user that runs apache and the user that you used to actually start the listener
    • configure whether or not the microservices should use authentication
    • If the microservices are configured to use authentication you will need to edit the microservices_users xml file.
      • You can use any username and password you choose.
      • the serviceUri is the path to the services wsdl (depends on where you placed the soap_server files).

2.2.4 Install Islandora PHP Soap Server

  • soap_serv.php, RoblibServices.php and the config.xml file from the soap_server directory must be placed in /var/www/html/ (or another web accesible directory). You can copy the whole soap_server directory to this location or just the individual files, the path to your WSDL will change depending on where you install the files.
  • cp -R /opt/php_listeners/soap_server /var/www/html/ (adjust this command as necessary)
  • modify the soap_server config.xml file by updating the path to the microservices directory (if you installed the microservices in /opt/php_listeners this step is not necessary)

2.3 Install Taverna workbench

Import microservices:

From within Taverna Workbench

  • Click import new service and then click on WSDL services from the dropdown.
  • Enter the URL of of the PHP Soap Service WSDL. For example http://domain/soap_server/soap_serv.php?wsdl
  • Click ok and the service will be added.

You can now use the Islandora PHP Soap Services to design a workflow.

2.4 Install JMS Stomp listeners

2.4.1 Fedora server setup

  • To enable Stomp support in the embedded JMS broker download the Spring distribution from http://www.springsource.org/download and copy the .jar files in the dist directory to $FEDORA_HOME/tomcat/webapps/fedora/WEB-INF/lib.

  • Edit $FEDORA_HOME/server/config/fedora.fcfg and change the section defining the broker to this:

```
  • To the same file add a third section underneath to define another channel to send messages to:

A datastore representing a JMS Destination for APIM events used by the JMS listeners ```
  • At the bottom of this file add a third datastore section:

Messaging Destination for API-M events which update the repository A space-separated list of message types that will be delivered to this Destination. Currently, "apimUpdate" and "apimAccess" are the only supported message types. Optional, defaults to topic. ```
  • Restart Fedora.

  • Ensure firewall rules allow access to the specified port from the listener server.

2.4.2 Start the Listener

Start the listener with:

php listener.php

You can verify the listeners are running by checking for output in application.log. You can also check the process listing by type ps -ef | grep php

To verify that the listener is successfully communicating with Fedora you can check the listener.log (or whatever path/name you configured in the config.xml) for output. This file may not exist until you add or modify a Fedora object.

< previous page | next page >