I would expect that the code is not finding a file in that "tmp" directory and is going directly to the catch block. So check wherever stderr is redirected to in your
servlet container and
you should find the stack trace there.
It's a bad idea to use relative paths in a
JEE environment, because you don't know what the servlet container's current working directory is. And if you do know, you still can't rely on that knowledge. And if you assumed the path was going to be relative to your web application in some way, well, it isn't.