For Programmers: Free Programming Magazines  


Home > Archive > Java Help > November 2005 > Execute external program from tomcat servlet









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Execute external program from tomcat servlet
Fredrik

2004-09-28, 9:28 pm

I want to execute external programs (in this case batch-files)
server-side, and capture the output. I've read about Runtime.exec and
the different problems with reading the input stream.
Despite having tried a bunch of examples, I haven't been able to get
any of them to work when executed by tomcat (running as a service on
win2003svr, user "local system account" ).
As a stand-alone java program there is no problem executing the
batch-file. What could be the cause of my problem?
Andrew Thompson

2004-09-28, 9:28 pm

On 28 Sep 2004 14:46:07 -0700, Fredrik wrote:

> ...What could be the cause of my problem?


<with head tilted>
To fix that NotEnoughFluffyKittensException,
simply use the web-context cats='letthembreed'.
</with head tilted>

If that does not fix the problem, you might try
stating exactly what the exception or error is.
<http://www.physci.org/codes/javafaq.jsp#exact>

I would also be helpful if you provide a self-contained
example of your code that does not work.
<http://www.physci.org/codes/sscce.jsp>

--
Andrew Thompson
http://www.PhySci.org/codes/ Web & IT Help
http://www.PhySci.org/ Open-source software suite
http://www.1point1C.org/ Science & Technology
http://www.lensescapes.com/ Images that escape the mundane
Fredrik

2004-09-29, 5:00 am

I didnt't get an exception. That would make things alot easier.
I didn't include any code since i've tried almost every example that i
could find, with the same result: _nothing happens_ The external
program never seems to get executed.
I've tried everyting from simple ones like

try {
String line;
Process p = Runtime.getRuntime().exec(cmdline);
BufferedReader input = new BufferedReader
(new InputStreamReader(p.getInputStream()));
while ((line = input.readLine()) != null) {
System.out.println(line);
}
input.close();
}
catch (Exception err) {
err.printStackTrace();
}
}

,to complete multi-threaded helper classes such as
http://www.codeproject.com/useritems/ProcessHelper.asp

Both of them works splendid when executed as standalone java, but not
from tomcat.
I didn't include them because i thought this was a "theroretical"
problem with running external programs from java programs running as a
windows service, not a code-error.

Please excuse my bad English.



Andrew Thompson <SeeMySites@www.invalid> wrote in message news:<4h8zgxq9029i.pesjrbphczig$.dlg@40tude.net>...
> On 28 Sep 2004 14:46:07 -0700, Fredrik wrote:
>
>
> <with head tilted>
> To fix that NotEnoughFluffyKittensException,
> simply use the web-context cats='letthembreed'.
> </with head tilted>
>
> If that does not fix the problem, you might try
> stating exactly what the exception or error is.
> <http://www.physci.org/codes/javafaq.jsp#exact>
>
> I would also be helpful if you provide a self-contained
> example of your code that does not work.
> <http://www.physci.org/codes/sscce.jsp>

Andrew Thompson

2004-09-29, 11:03 am

On 28 Sep 2004 23:32:07 -0700, Fredrik wrote:
> Andrew Thompson <SeeMySites@www.invalid> wrote in message news:<4h8zgxq9029i.pesjrbphczig$.dlg@40tude.net>...
...[color=darkred]
[color=darkred]
> I didnt't get an exception. That would make things alot easier.
> I didn't include any code since i've tried almost every example that i
> could find, with the same result: _nothing happens_ The external
> program never seems to get executed.
> I've tried everyting from simple ones like
>
> try {


Put something there that is 'self-contained' and I will try it..
....
> http://www.codeproject.com/useritems/ProcessHelper.asp


Wants a log-in..

> Both of them works splendid when executed as standalone java, but not
> from tomcat.


Logs!

> I didn't include them because i thought this was a "theroretical"
> problem with running external programs from java programs running as a
> windows service, not a code-error.


I do not know enough to say, but you are going to need
to get the server gurus in on this one.

> Please excuse my bad English.


You're English is fine, but please make sure you read the
URL's I give you, the code you supplied above was not what
I described in the link.

--
Andrew Thompson
http://www.PhySci.org/codes/ Web & IT Help
http://www.PhySci.org/ Open-source software suite
http://www.1point1C.org/ Science & Technology
http://www.lensescapes.com/ Images that escape the mundane
garollous

2005-11-21, 7:21 pm

quote:
Originally posted by Fredrik
I want to execute external programs (in this case batch-files)
server-side, and capture the output. I've read about Runtime.exec and
the different problems with reading the input stream.
Despite having tried a bunch of examples, I haven't been able to get
any of them to work when executed by tomcat (running as a service on
win2003svr, user "local system account" ).
As a stand-alone java program there is no problem executing the
batch-file. What could be the cause of my problem?

garollous

2005-11-21, 7:23 pm

Hi,
I am having the same issue now. Can you please let me know if we can execute batch file if tomcat is started as a service
Thanks for your help.
Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com