I don't think that
Tomcat can help with that. It appears to be a Hibernate problem that just happens to appear in the context of the production (Tomcat) machine.
Generally the first thing
you should do is make sure that the proper
JDBC driver is installed in TOMCAT_HOME/lib. Followed by a check to ensure that no firewall is blocking connection from the Tomcat machine to the database machine.
You should check the catalina.out and localhost logfiles to make sure that there are no error messages coming from the connection pooler itself.
Of course, I'm assuming that you are using a Tomcat-managed connection pool and not simply providing the pool as part of the webapp itself. Since that's what you should be doing.
The secret of how to be miserable is to constantly expect things are going to happen the way that they are "supposed" to happen.
You can have faith, which carries the understanding that you may be disappointed. Then there's being a willfully-blind idiot, which virtually guarantees it.