Sorry for not responding sooner; we've got a crunch on trying to get all
sorts of new stuff available for all you guys on this list to have a go at!

On 31/10/2013 13:29, Willem Jan Faber wrote:
I’m working on an implementation of a web-frontend for taverna-server,
  (https://github.com/impactcentre/iif-taverna2-client).

Currently I’m encountering a strange problem concerning list outputs
(https://github.com/impactcentre/iif-taverna2-client/issues/6).

When I run my workflow (without list input) it runs just like expected,
but when I change the input to a list my client does not show the
expected output (while in tavern itself the output is correct).

First off, I've checked through your code and I notice that you're using
the Java REST client interface. Unfortunately, we've not been
maintaining that as closely as the Ruby REST client interface. I wonder
whether it would be possible for you to use Taverna Player instead?

Website:
  http://www.taverna.org.uk/developers/work-in-progress/taverna-player/
Code:
  https://github.com/myGrid/taverna-player

Secondly, I need to know the exact version of Taverna Server that you
are writing your API against. If you get the content of the root page of
Taverna Server's REST interface (which ought to be available to any
normal browser) the attributes of the top-level XML element should
describe this precisely. For reference, we're about to release 2.5.1
(that's planned for next week).

To debug my issue I’ve copied some lines from the t2-server-java-cli
(https://github.com/myGrid/t2-server-java-cli/blob/next/src/main/java/uk/org/taverna/server/client/cli/GetOutput.java#L123)
and onwards. However the output in the log is not what I would expect :

[snip log that I don't understand; sorry!]

Is there any way to fetch the “application/octet-stream” and parse it,
so the output url’s will appear in the result?

Once you've got a reference to a particular output, fetching it ought to
come back as application/octet-stream. Unless you're using a very recent
version, in which case we run an improved type detection engine that
might be able to provide a more precise type; the content will still be
the same bytes though. :-)

But with a list output, that list output actually corresponds to a
directory where the elements are files in that directory. (Or even
directories, when you're dealing with deeper outputs.) If you've got a
sufficiently recent version of Taverna Server, you can instead fetch the
output descriptor document (from “…/runs/{id}/output”, using content
negotiation to opt for XML or possibly JSON *but not* plain text) which
will give you a properly described structure with links to the leaf
outputs. If the leaf outputs are themselves URLs, you'll have to apply
that interpretation yourself (that's workflow-specific).

Donal.

<<attachment: donal_k_fellows.vcf>>

------------------------------------------------------------------------------
November Webinars for C, C++, Fortran Developers
Accelerate application performance with scalable programming models. Explore
techniques for threading, error checking, porting, and tuning. Get the most 
from the latest Intel processors and coprocessors. See abstracts and register
http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk
_______________________________________________
taverna-hackers mailing list
[email protected]
Web site: http://www.taverna.org.uk
Mailing lists: http://www.taverna.org.uk/about/contact-us/
Developers Guide: http://www.taverna.org.uk/developers/

Reply via email to