Is there a reason to call the getMessage method and printStackTrace method separately? Rather than passing the throwable to the logger. Reference docs link below.

http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Logger.html