Olá
pessoal!
Estou
com um problema para rodar um processo (dentro de minha aplicação JAVA) através
do comando Runtime.getRuntime(), quando rodo a aplicação no TOMCAT. Acontece que
tudo roda muito bem atraves da linha de comando normal ou quando rodo pelo
JBuilder.
O
codigo é o seguinte:
public Resultado processaXMLQL(File
consulta) throws IOException{
File path = new
File("D:\\xmlql\\lib");
File diretorio = new File("D:\\temp");
File informacao = File.createTempFile("resultado",".xml",diretorio);
try
{
Process p;
Runtime r = Runtime.getRuntime();
p = r.exec("java com.att.xmlql.cmdLine.Query -q "+consulta.getAbsolutePath()+" -o "+informacao.getAbsolutePath(),null, path);
p.waitFor();
}catch (Exception e){ }
Resultado result = new Resultado("FontesSE",informacao);
return result;
}
File diretorio = new File("D:\\temp");
File informacao = File.createTempFile("resultado",".xml",diretorio);
try
{
Process p;
Runtime r = Runtime.getRuntime();
p = r.exec("java com.att.xmlql.cmdLine.Query -q "+consulta.getAbsolutePath()+" -o "+informacao.getAbsolutePath(),null, path);
p.waitFor();
}catch (Exception e){ }
Resultado result = new Resultado("FontesSE",informacao);
return result;
}
Tudo esta no path do sistema. Pela linha de
comando eu rodo a aplicação e esta chama o processo sem problema algum. Mas pelo
tomcat, so deu certo quando chamei um arquivo executavel. Testei com o p =
r.exec("notepad.exe"), ai deu certo.
Alguem tem uma luz????
Valeu!
Ladjane Silva de Arruda
Mestranda em Informática na UFPb (Campus II)
[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
http://www.ladjane.com