Ajudaaaa! metodo waitfor():

dae galera… to cm um problema com metodo waitfor(); neste codigo

<% String app = request.getParameter("app"); String frm = request.getParameter("frm"); String scr = request.getParameter("scr"); String row = request.getParameter("row"); String col = request.getParameter("col"); String ent = request.getParameter("ent"); String sce = request.getParameter("sce"); String ver = request.getParameter("ver"); String yea = request.getParameter("yea");

//out.println("c:\respaldo\ChangeScript.exe " + app + “#” + frm + “#” + scr + “#” + row + “#” + col + “#” + ent + “#” + sce + “#” + ver + “#” + yea);

Process p = Runtime.getRuntime().exec("c:\pfc\ChangeScript.exe " + app + “#” + frm + “#” + scr + “#” + row + “#” + col + “#” + ent + “#” + sce + “#” + ver + “#” + yea);

p.waitFor();
out.println(“Regras executadas com successo!!”);
%>
Fechar

da um erro de timeout antes do processo ser concluido. Gostaria de ajuda para trocar este metodopor outro q mostre a msg “out.println(“Regras executadas com successo!!”);” do codigo acima somente quando o processo for concluido, sem esse erro de time out!!

Por favor ,

henrique

Uma vez tive problema com o waitfor(), acabei resolvendo pegando o InputStream e lendo em um while até esgotar.

Só que era no linux. Não sei se vai funcionar aí no teu, mas não custa tentar.

Até achei o trecho aqui:

InputStream saida = new BufferedInputStream(proc.getInputStream());
byte[] lido = new byte[512];
while (saida.read(lido) != -1) { }

valeuuu !!! funcionou 100%!!!

abraço!