Используем Tomcat, датасорсы настраиваются как бины в контексте томката. Пул соединений — apache commons-db. В сети нашел, как справится с wait_timeout для встроенного Hibernate'овского пула C3P0. Но его не советуют использовать даже сами авторы хибернейта. Для апачевского пула есть возможность указать validationQuery в качестве параметра к датасорсу. Но этот запрос, пусть даже select 1, будет выполняться при каждом запросе коннекта из пула соединений. Короче, накладно. Решил слабать свой класс, который после некоторого времени простоя пробегается по всем JNDI бинам, и для каждого найденного мускульного датасорса делает этот самый select 1. Вызов статического метода делается один раз за пользовательскую сессию, например, при логине пользователя в систему. Есть советы/другие варианты?