Installation Taverna

From PyWPS
Jump to: navigation, search

PyWPS Download and install

WSDL/SOAP is supported in the pywps-3.2-soap project branch, that can be downloaded as follows:

> svn co https://svn.wald.intevation.org/svn/pywps/branches/pywps-3.2-soap/ pywps-3.2-soap

Until sufficient tests are made, the code will not be merged in the major trunk.

The installation procedure is the standard one using setup.py

>cd pywps-3.2-soap/
> sudo python setup.py install

for more information on installation, configuration etc please check wiki's newbie section (Installation).

The only new aspect in installation, is that python's lxml package is mandatory !!!! This packages is easily found in the repositories, for more information please check the lxml installation page or (on an Ubuntu or Debian server)
apt-get install libxml2-dev && apt-get install libxslt1-dev && easy_install lxml

pywps.cfg, process path and creation, URLs, wpsoutputs etc etc ARE ABSOLUTELY THE SAME !!!!

Configuration file

The configuration file (pywps.cfg) should be properly fill,in particular:

serveraddress=<url to wps service>

For example:

http://localhost/wps/generic.cgi

The XSLT transformation that generated the WSDL, requires this information to properly generate the WSDL, if the URL is not correct there will be a mismatch between the server and the called services in WSDL

OGC/W3C proxy

Since April 2011, W3C started to implement "a number of defensive measures including utilizing a tarpit" due to "applications making excessive requests for DTD and other schemata". Also some schemas (like xml.xsd) have been moved to new URL. More information can be found on the following email discussions [1] [2]

These changes have broken some OGC schemas or made XML schema validation more complicated if a user doesn't have a catalogue structure. Unfortunately Taverna lacks a schema catalogue and that W3C tarpits will prevent service validation / workflow validation.

A technical solution is to use a reverse proxy that intercepts any requests to W3C and OGC web site and reply with the necessary schemas cached in the local machine. A python proxy has been developed and stored in NETMAR's SVN

svn co https://svn.wald.intevation.org/svn/pywps/branches/pywps-3.2-soap/ogcproxy/ ogcproxy

The install procedure is documented in the README file and script file. The script will change the Iptables to direct any traffic to W3C/OGC servers to be directed to a local file structure.

Note that if your Taverna instance is configured to use another proxy, www.w3.org and schemas.opengis.net must be added as proxy *exceptions* in Taverna's proxy config - otherwise the traffic to these sites will not be successfully intercepted by ogcproxy. This config can be found in Taverna under File: Preferences: HTTP proxy: Non-proxy hosts, and Taverna uses | to separate exceptions. A typical setting would be:

127.0.0.1|schemas.opengis.net|www.w3.org

Taverna Installation

Taverna workbench can be downloaded from http://www.taverna.org.uk/download/workbench/ It's better to use version 2.2 (or newer) as it comes with Xpath plugin necessary to parse WPS content.

For detailed information/documentation please check http://www.taverna.org.uk/documentation/ this wiki will only explain details related to PyWPS

In L nux, taverna is started by running the taverna.sh script:

> cd taverna-workbench-2.2.0
> sh taverna.sh

XPath plugin

Taverna has a new Xpath plugin that is necessary to extract XML content from the response document:

To install go to Advanced > Updates and Plugins click on Find updates and select Xpath plugin from prototype plugins:

Plugin menu.png


Xpath plugin.png


The plugin will be available inside the service templates on the service panel:

Xpath service.png


--Wikiadmin 17:05, 10 January 2011 (UTC)