[Resolvido]Problema com Runtime.getRuntime Windows

10 respostas
E

Estou tentando utilizar o comando em uma classe JAVA, chamada por uma pagina JSF:
Process p = Runtime.getRuntime().exec("cmd /c calc"); OutputStream os = p.getOutputStream(); InputStream is = p.getInputStream();

Quando rodo pelo eclipse, funciona!
Quando rodo pelo tomcat, não funciona!, por que? alguem pode me ajudar?

10 Respostas

T

O Tomcat está rodando o programa de calculadora na máquina onde está rodando o Tomcat, não na máquina que está rodando o browser. Se o Tomcat estiver rodando como serviço, então ele não vai conseguir executar um programa que tenha janelas.

E

Obrigado por responder, mas, os dois testes que eu fiz, foram na mesma maquina e futuramente, quando funcionar o comando, tem mesmo que rodar no server e não na maquina client, o comando vai ser este aqui:

Runtime.getRuntime().exec(“cmd /c NET USE LPT2 \\192.168.205.171\lp66 /yes”);

Sera alguma configuração no catalina.policy do tomcat?

Aguardo e Agradeço.

T

Hum… o Tomcat vai rodar como serviço? Se ele for rodar como serviço, tome um pouco de cuidado com a configuração do serviço; ele não pode ser cadastrado para rodar sob LocalSystem porque aí não terá acesso a shares de rede e outras coisas (que é o que o “net use” está fazendo).

E

Sim, vai rodar como serviço do windows, o proprio instalador fez isso! Tem como mudar esta situação?

E

Mas nesta configuração, ele conseguiria abrir a calculadora, correto?

T

LocalSystem não consegue abrir programas gráficos, a menos que você faça isto aqui:

E

Obrigado, funcionou a calculadora!!
sera que o net use precisa de algo mais?

thingol:
LocalSystem não consegue abrir programas gráficos, a menos que você faça isto aqui:

T

Precisa de um usuário de rede (de preferência cuja senha não expire). Algo como:

onde [email removido] é um usuário srvTOMCAT do domínio xyz.com.br

E

agradeço! vou testar e retorno

thingol:
Precisa de um usuário de rede (de preferência cuja senha não expire). Algo como:

onde [email removido] é um usuário srvTOMCAT do domínio xyz.com.br

E

Realmente funcionou desta forma!

obrigado pela ajuda.

edurei:
agradeço! vou testar e retorno

thingol:
Precisa de um usuário de rede (de preferência cuja senha não expire). Algo como:

onde [email removido] é um usuário srvTOMCAT do domínio xyz.com.br

Criado 12 de junho de 2009
Ultima resposta 15 de jun. de 2009
Respostas 10
Participantes 2