Pattern: Return errors instead of null

Created: 2010-01-04 17:42:36      Last updated: 2010-01-04 17:49:58

 As Taverna can't (currently) handle null (see - in Taverna 2 one can instead return exceptions on individual ports and inside lists.

Exceptions are registered as error documents by Taverna, and are passed along. The ErrorBounce layer of processors downstream will prevent execution if they see this 'null'-exception - as showed in this example that the string concatination is just run for the two list elements that are not exceptions. Downstream processors that don't read the port with an error on it's output are not affected.

This pattern could be used for instance for database lookups. A database NULL has semantically almost the same meaning as error documents in Taverna - placeholders for the expected value. 

TAV-653 suggests registering a special exception that is defined as null, so that future null-supporting services/beanshell scripts can dereference the error as null again - while services that can't handle it will behave like in this workflow.

Information Preview

Information Run

Run this Workflow in the Taverna Workbench...

Option 1:

Copy and paste this link into File > 'Open workflow location...'
[ More InfoExpand ]

Information Workflow Components

Information Authors (1)
Information Titles (1)
Information Descriptions (0)
Information Dependencies (0)
Inputs (0)
Processors (3)
Beanshells (1)
Outputs (6)
Datalinks (8)
Coordinations (0)

Information Workflow Type

Taverna 2

Information License

All versions of this Workflow are licensed under:

Information Version 1 (of 1)

Information Credits (1)


Information Attributions (0)



Information Tags (0)


Log in to add Tags

Information Shared with Groups (0)


Information Featured In Packs (0)


Log in to add to one of your Packs

Information Attributed By (0)



Information Favourited By (0)

No one

Information Statistics


Citations (0)


Version History

In chronological order:

Reviews Reviews (0)

No reviews yet

Be the first to review!

Comments Comments (0)

No comments yet

Log in to make a comment

Workflow Other workflows that use similar services (0)

There are no workflows in myExperiment that use similar services to this Workflow.