I've reviewed the steps here (many times), and I pool a number of Driver objects for my rendering.
The important question is: how do you handle Configuration? Do you call new Configuration() more than once?
The only conclusion I could come up with was something with the precompiled xsl was causing my troubled. I only received this nullpointer exception when I pre-compiled my xsl documents into templates objects and tried utilizing these templates in a multi-threaded environment.
There's no hint this could be your problem, although XSLTC is known to have bugs, including throwing unexpected NPEs.