Чего я не понимаю, так это использовать printStackTrace ошибки в разделе catch.

Кроме того, потребуется определенная сноровка в раскрое.