Я думаю, что настройки тайм-аута были специфичны для Sun JVM - поэтому он может не работать на Mac точно так же.
У меня была эта проблема в прошлом - в конечном итоге из-за использования веб-потоков. Что я сделал, так это добавил немного JMS, чтобы код веб-уровня отправлял запрос электронной почты - и прослушиватель сообщений (который был его собственным потоком) прослушивал и обрабатывал электронную почту - в том случае, когда он застрял, он не завис Влияние остальной части приложения (только электронные письма заняли немного больше времени). На самом деле не решает проблему с корнем, но я получил лучший дизайн.