[Pywps-devel] [Taverna-users] Error in XMLInputSplitterActivity
Jorge de Jesus
jmdj at pml.ac.uk
Thu Apr 12 09:46:54 CEST 2012
See reply below
On 11/04/12 15:02, Egil Støren wrote:
> Hi Alan,
> Thank you. Your advise got me one step further. By using the "Add
> value" button rather than "Add URL", I passed the
> ExcecuteProcess_r.add.Datainputs box without errors. But
> unfortunately, the next box, ExcecuteProcess_r.add, turned red ...
> This error is something I suppose the pyWPS folks should address.
> Accordingly I send this message also to the pyWPS mailing list.
My fault !!! I've checked the WPS cookbook and there is no reference to
the difference between "Add value" and "Add URL", in my head the "Add
value" is so standard that I've forgot to document it.
Basically, Taverna should just pass the URL as a string value to the
WPS, and the WPS will fetch the data from the URL, this prevents massive
data transfer between Taverna and the WPSs. The PyWPS implementation got
a small modification that even allows for processes to output everything
as URL references as their default output.
Like Alan said "Add value" for the URL, the URL should be treated as a
> The error message shown in taverna was a "404 Not found" error. When I
> investigated the apache error.log, I found this error:
> script not found or unable to stat: /usr/lib/cgi-bin/wps
> And that was correct. I had no script with that name in the cgi-bin
> directory. I am not able to find any reference to this script in the
> cookbook. But I searched in the software, and found this in the file
> ln -s /usr/bin/wps.py /usr/lib/cgi-bin/wps.py
> I found a /usr/local/bin/wps.py file, and run manually this command
> (without invoking the pywps.postinst script):
> sudo ln -s /usr/local/bin/wps.py /usr/lib/cgi-bin/wps
> When testing taverna again, I stopped again in the
> ExcecuteProcess_r.add box, but this time with a different error message:
> <Exception xmlns="http://www.opengis.net/ows/1.1"
> 'The requested process is not part of the
> instance. Check pywps conf file and WSDL. WSDL has to point to the
> correct wrapper, please check location attribute in address element of
> WSDL document'
Once again something badly documented, but the WPS exception gives some
nices clues :), basically the WSDL and the WPS's DescribeProcess are not
the same, the WSDL is asking for a process that is not in the WPS
instance, the following explanation is the most likely cause of your
If you look at the bottom of the WSDL document you have the address
This is the URL that taverna will use to call the services, and it has
to be *identical *to the WPS instance, the URL in the WSDL document is
fetched from the pywps configure file on the serveradress
Looking at what you did and how it couldn't find the
/usr/lib/cgi-bin/wps.py , it is very likely that you are running the
default pywps config option and/or you didnt configured the serveradress.
I recommend that you remove the ln link, reconfigure your system and see
what is at the end of the WSDL file.
Let me know if it helped
> Any advise?
> On 04/11/2012 01:35 PM, Alan R Williams wrote:
>> On 11/04/2012 11:43, Egil Støren wrote:
>>> I got a message in the error panel, and a similar message in the
>>> standard output:
>>> WARN 2012-04-11 11:58:13,339
>>> Failed (INVOCATION) invoking
>>> net.sf.taverna.t2.activities.wsdl.xmlsplitter.XMLInputSplitterActivity at 12cc1d1d
>>> for job DispatchJobEvent
>>> facade0:Workflow1:ExecuteProcess_r.add_DataInputs: Error in
>>> org.jdom.IllegalDataException: The data ".... Long string of binary
>>> rubbish ..." is not legal for a JDOM character content: 0x0 is not a
>>> legal XML character." is not legal for a JDOM character content: 0x0 is
>>> not a legal XML character.
>>> at org.jdom.Text.setText(Text.java:188)
>>> at org.jdom.Text.<init>(Text.java:99)
>>> at org.jdom.Element.addContent(Element.java:801)
>>> (about 50 additional lines with java trace)
>> What a wonderful error message "Long string of binary rubbish" :-)
>> I guess that the workflow is expecting the URL of the data as the input
>> and you are telling Taverna to read the input from the URL. So the
>> workflow is using the actual tif image.
>> You need to make sure that you click "Set value" and do not click
>> "Set URL".
>> That is just my guess. If it is wrong, then you will need to send us the
>> workflow so we can look at it.
>>> According to Jorge, the cookbook author, he has no problem running this
>>> example workflow.
>>> I would very much appreciate if somebody could give me advice on how to
>>> track down this error.
>>> Best regards,
>>> Egil Støren
>>> The Norwegian Meteorological Institute
>> Better than sec? Nothing is better than sec when it comes to
>> monitoring Big Data applications. Try Boundary one-second
>> resolution app monitoring today. Free.
>> taverna-users mailing list
>> taverna-users at lists.sourceforge.net
>> taverna-users at lists.sourceforge.net
>> Web site: http://www.taverna.org.uk
>> Mailing lists: http://www.taverna.org.uk/about/contact-us/
> Pywps-devel mailing list
> Pywps-devel at wald.intevation.org
PGP public key: 0x595FF9D3
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Pywps-devel