Tomcat7 hangs on deploying apps

A possible problem is Tomcat waiting for entropy to build up. Take a few thread dump with jstack to see who's waiting on what.

Tomcat 7+ heavily relies on SecureRandom class to provide random values for its session ids, and other things. Depending on your JRE, it can cause delays during startup if the entropy source that is used to initialize SecureRandom is short of entropy.

If the problem is entropy, there is a way to configure JRE to use a non-blocking entropy source by setting the following system property:

-Djava.security.egd=file:/dev/./urandom

See this related discussion for more details.