Wow, you sure left out a LOT of important details!
1. How many requests are serviced before the system runs out of memory? One, dozens, hundreds, thousands?
2. What resources does the service use? ie: databases, external program calls? graphics contexts?
If this was my problem I would be using the tomcat Management application to monitor memory and Thread use change with time. The cause might just jump out at you from those statistics.