In 'regular
java', OutOfMemory errors are usually caused by infinite loops or infinite recursion.
In Servlets/JSPs, the above is true, but you can also get it from infinite page includes. ie a.jsp includes b.jsp, includes a.jsp ad infinitum.
I tend to suffer from the second one more often