The method requester.getExceptionLog() returns a list of exceptions that happened during execution. This creates potential memory leak.
I think that this method should be removed, and replaced with some Consumer<Exception> or better Consumer<Throwable>. Or maybe some specialized interface. For backward compatibility, some default impelemtation of this interace could expose itself via getExceptionLog() method. But I think that this is excessive and those who need them as list might plug listener that collects them.
Practially no application needs these exceptions as list. Most application need just to log these exception and forget about them.