[Biojava-l] Running apps with Java
Francois Pepin
fpepin at cs.mcgill.ca
Mon Aug 11 17:49:07 EDT 2003
What do other people think about something like that?
We've basically got 2 problems here, running apps on the same machine
and running them on a remote machine.
If you can run apps on a remote machine, then you can obviously run them
on the local machine. But the machinery to do that is often pretty heavy
(as compared to just calling the command line).
I'm not sure if I'd want to have to depend on that machinery just
because I want to my dingy little application to call blast once.
I personally think that both problems should be handled independently.
If you're calling remote machines, you're often in heavy computation
land, so you need something robust and that can support a workflow
system. You don't care if you have to install 3 applications on the
server and a client on all of the machines.
If you're calling a local application, you usually just want to do light
stuff and be done with it. You've got a JVM and your executable and you
don't want to have to install anything else in there.
At this point we're basically been using the following:
-BioOpera for the heavy computations
(http://www.inf.ethz.ch/personal/bausch/bioopera/main.html)
-Nasty java for the command line (creates a shell script and deletes it
later)
-We also have an ssh implementation of Java for remote command-line
execution. It's useful to call Linux apps from Windows. But it's based
on the MindTerm code which isn't licensed for commercial use (and
conflicts with the LGPL).
I think that biojava should have a nice way to calling local apps, and
leave the heavy-duty stuff to someone else (and then get a client to
call that someone else).
Francois
On Mon, 2003-08-11 at 11:26, Tom Oinn wrote:
> Hi there,
>
> Apologies for the slight plug, but at the EBI we've been working on
> something that might be of interest to people trying to do this. We have
> a system called Soaplab that can be used to expose command line tools as
> web services (trivial to then consume) and another project Taverna which
> focuses on workflow construction and execution using FreeFluo (open
> source workflow enactor written by some of our collaborators at
> Southampton). The URLs for these are...
>
> http://industry.ebi.ac.uk/soaplab/
> http://taverna.sf.net
> http://freefluo.sf.net
>
> As an example, we have all of EMBOSS in this system here and can build
> complex workflows (we're using it for work on genetic disease in
> collaboration with some biologists in Newcastle University), there's a
> graphical workflow construction environment, it's all pretty much there.
> Ongoing work of course (aren't they always?) but usable in its current
> form. Anyway, sorry if this is off topic too much, we are actually
> planning to contribute parts of Soaplab's clients into BioJava in the
> same way as we have for BioPerl, and similarly so for the workflow
> engine if that's desirable.
>
> Cheers,
>
> Tom Oinn (work above is by Martin Senger, myself and the rest of the
> Taverna project team), I've cc'd Martin on this email, he's the author
> of Soaplab.
>
> Schreiber, Mark wrote:
> > Hi -
> >
> > I know this has come up a few times on the list but I'm not sure we have
> > ever come to any agreement on it so I'm going to raise it again as I
> > think it is important.
> >
> > What is the best way to invoke a native bioinformatics program in Java.
> > People have reported that controlling processes directly has been patchy
> > in Java, is this still the case or have JVMs evolved? If not then what
> > is the alternative? Wrapping the program in a perl or python webservice?
> > If this was the prefered method then we could borrow quite a bit from
> > the Bio::Pipeline::Runnable package.
> >
> > Ultimately the reason for asking is that J2EE (particularly the message
> > driven beans) would make for a pretty good pipelining system (drawing on
> > all its inherent transaction control, roll back etc). My expectation
> > would be that biojava could exist server side to provide parsing support
> > and possibly connection to BioSQL although J2EE could also do that
> > without biojava. It would also be useful in local EJBs (no serialization
> > slowdown) to do some manipulation of sequence data. The only missing
> > component is some kind of BioRunnable that could reliably kick off the
> > jobs and capture the output for parsing with the biojava parsers.
> >
> > Any thoughts?
> >
> > - Mark
> >
> >
> > Mark Schreiber PhD
> > AgResearch Joint Bioinformatics Institute
> > School of Biological Sciences
> > Universtity of Auckland
> > 3a Symonds St
> > Private Bag 92-019 Auckland New Zealand
> >
> > PH: +64 9 3737599 ext 84290
> > FAX: +64 9 3737414
> >
> >
> > =======================================================================
> > Attention: The information contained in this message and/or attachments
> > from AgResearch Limited is intended only for the persons or entities
> > to which it is addressed and may contain confidential and/or privileged
> > material. Any review, retransmission, dissemination or other use of, or
> > taking of any action in reliance upon, this information by persons or
> > entities other than the intended recipients is prohibited by AgResearch
> > Limited. If you have received this message in error, please notify the
> > sender immediately.
> > =======================================================================
> >
> > _______________________________________________
> > Biojava-l mailing list - Biojava-l at biojava.org
> > http://biojava.org/mailman/listinfo/biojava-l
>
>
> _______________________________________________
> Biojava-l mailing list - Biojava-l at biojava.org
> http://biojava.org/mailman/listinfo/biojava-l
More information about the Biojava-l
mailing list