File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Servlets and the fly likes Premature EOF from runtime.exec() Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Servlets
Bookmark "Premature EOF from runtime.exec()" Watch "Premature EOF from runtime.exec()" New topic

Premature EOF from runtime.exec()

mathew Jackson

Joined: Jun 15, 2001
Posts: 12
First, if this is the wrong forum, my appologies.
I have a servlet that executes a C++ program on Solaris. The problem I'm having comes in streaming the output from the servlet to the client app. The client is also a Java client.
The code looks like this (but a bit more complex)
OutputStream = (OutputStream)response.getOutputStream;

Runtime rt = Runtime.getRuntime();
Process pro = rt.exec(cmd);
InputStream is = pro.getInputStream();
byte[] buffer = new byte[266];
int bytes =;
if(bytes == -1) break;
}// end while
Regardless of the size of output (and it is usally quite large) I get one of two errors. either an OutOfMemoryError from the servlet or Unexpected EOF Exception from the client.
Does anybody have any ideas? Would I have the same trouble if I used JNI?
thanks in advance
I agree. Here's the link:
subject: Premature EOF from runtime.exec()
It's not a secret anymore!