[Biojava-l] Using Java to create BLAST searches

Ng, Peter Peter.Ng at bccdc.ca
Wed Nov 1 19:40:53 UTC 2006


Hi Mark/Andy,

I have a similar question relating to command line blast searches.  I'm
using elements from both flatfile.txt and i.html to present on a html
page.  How do I ensure each of blast1 or blast2 is completed before I
start the next step?  I'm not sure how to maintain control once the
command line is being executed.  Is there a way to test the presence of
the output files?  Does synchronize work in this situation.  If so, how
would I put it in the code?  Any help would be appreciated!

thanks,
peter

blast1 = "CMD /c c:/blast/blastall -p blastn -d c:/blast/db/" +
getLibrary() + " -i c:/blast/files/noc.txt -e .0001 -m 8 -o
c:/blast/files/flatfile.txt -v 2 -b 2 -F F";
blast2 = "CMD /c c:/blast/blastall -p blastn -d c:/blast/db/" +
getLibrary() + " -i c:/blast/files/noc.txt -e .0001 -m 0 -o
c:/batchBLAST/" + i + ".html -T T -v 5 -b 5 -F F";			

Runtime.getRuntime().exec(blast1);
Runtime.getRuntime().exec(blast2);

-- 
Regards,

Peter Ng
Laboratory Information Management Coordinator
Laboratory Services
BC Centre for Disease Control
655 West 12th Avenue
Vancouver BC  V5Z 4R4
Tel: 604-660-2058     
Page: 604-205-4814    
Fax: 604-660-6073
Web: www.bccdc.org



-----Original Message-----
From: biojava-l-bounces at lists.open-bio.org
[mailto:biojava-l-bounces at lists.open-bio.org] On Behalf Of
mark.schreiber at novartis.com
Sent: November 1, 2006 1:54 AM
To: Graham Etherington
Cc: biojava-l at lists.open-bio.org; biojava-l-bounces at lists.open-bio.org
Subject: Re: [Biojava-l] Using Java to create BLAST searches


Hi -

It may not like the command line having spaces in the path. Try
installing 
blast somewhere else as a test. Eg put it in C:\blast and then try 

String cmd = "C:/blast/bin/blastall -p blastn -d ecoli.nt -i test.fas -o

blast.out";

You could possibly even trick it by putting a short cut in the C 
directory.

Also biojava has some nice tools for working with processes.

- Mark

Mark Schreiber
Research Investigator (Bioinformatics)

Novartis Institute for Tropical Diseases (NITD)
10 Biopolis Road
#05-01 Chromos
Singapore 138670
www.nitd.novartis.com
www.dengueinfo.org

phone +65 6722 2973
fax  +65 6722 2910





"Graham Etherington" <g.etherington at imb.uq.edu.au>
Sent by: biojava-l-bounces at lists.open-bio.org
11/01/2006 04:39 PM

 
        To:     <biojava-l at lists.open-bio.org>
        cc:     (bcc: Mark Schreiber/GP/Novartis)
        Subject:        [Biojava-l] Using Java to create BLAST searches


Hi,
I'm developing on Windows (using Apache Tomcat) using jsp's to create 
BLAST
searches on a local BLAST database. Even though I'm not using BioJava
(intend to use it to parse the results), I thought this formum would be 
the
best place to ask for help.
Even when I hard code a good BLAST search I keep getting the same error 
when
I run my search, namely: 
" java.io.IOException: CreateProcess: sh -c "C:/Program Files/Apache
Software Foundation/Tomcat 5.5/blast/bin/blastall -p blastn -d ecoli.nt
-i
test.fas -o blast.out" error=2 "

The pertinent bits of code I'm using are...

String cmd = "C:/Program Files/Apache Software Foundation/Tomcat
5.5/blast/bin/blastall -p blastn -d ecoli.nt -i test.fas -o blast.out";

............


Runtime r = Runtime.getRuntime ();
Process runBlast = r.exec (new String[] {"sh","-c",cmd});
 
runBlast.waitFor ();
out.println ("Waiting for result");

//Write the results
BufferedReader br = new BufferedReader (new FileReader (output));
String line = null;
String results = "";
while ( (line = br.readLine ()) != null )
results = results.concat ("/n" + line);

.............

I'm not sure why it give me an IOException. I've checked that the file 
input
file exists and that all the paths are correct.
Any ideas?

Many thanks,
Graham


_______________________________________________
Biojava-l mailing list  -  Biojava-l at lists.open-bio.org
http://lists.open-bio.org/mailman/listinfo/biojava-l



_______________________________________________
Biojava-l mailing list  -  Biojava-l at lists.open-bio.org
http://lists.open-bio.org/mailman/listinfo/biojava-l




More information about the Biojava-l mailing list