Tomcat already has perfectly good connection pooling. What was your reason for rejecting it?
This may sound petty but I didn't want to have to manually keep track of the database information inside each instance of tomcat we have running.
Each instance of tomcat on our developer machines, development, pre-production, the production boxes. In my opinion that's a lot of room for error. Especially since we have multiple projects that shouldn't have to know where the data is coming from, they just need a simple way to access that data. I'd rather have all the DB info in a properties file inside the jar rather then having to put it on everyone's machine (and when we make changes to the db we have to replicate those changes).
The big reason for this is we are expecting a lot (A LOT) of data changes over the next couple of months. The entire removal of one database, the integration of two others, combinations, refactorings and the like are going to be a common issue for us. And I'd hate to have to tell the IT dept to make manual changes to reflect this.