Het is het beste om uw PostgreSQL-stuurprogramma in de map tomcat\lib te installeren. Kopieer gewoon de driver jar naar PATH_TO_TOMCAT\lib
Het is geen goed idee om dingen aan het systeem CLASSPATH toe te voegen, omdat je dan in de hel van class loader kunt eindigen. Hier is een voorbeeld van hoe je in de jar / classpath-hel terechtkomt.
- Stel dat de huidige app postgres 9.1 gebruikt en u de driver instelt op het systeem CLASSPATH
- Je besluit een andere app op die box te draaien die praat met een nieuwere versie van postgres, laten we zeggen versie 9.2
- Omdat je het systeemklassenpad gebruikt, zal app 2 uiteindelijk het oude stuurprogramma gebruiken omdat het SYSTEM-klassenpad de neiging heeft om voorrang te krijgen op het klassepad van een toepassing, tenzij het app-opstartscript CLASSPATH="" instelt om het systeemklassenpad leeg te maken of een aangepaste klassenlader die geen ouder-eerste klasse laadt.
Zie http://tomcat.apache.org/ tomcat-7.0-doc/jndi-datasource-examples-howto.html