Do as Tim Funk suggested, issue a kill -3 to tomcat when CPU usage gets
high to get an idea of what java Threads are currently doing. Issue a
few kills to get a better view of what part of process takes times. If
it's not enough to find the location of issue, you might want to invest
time in using
Sumit,
Since this is not a Tomcat issue I tagged it as OT.
Is the data query different for each user?
If no, setup a separate thread on startup to do the query and process it as
far as you can. I was able to create a String that was the body of the page,
then each request that came in simply