I am trying to create what I call a URL mapping handler that maps path and query variables from the http request to java method parameters via annotations. It is a bit like what Spring or JAX-RS does. The intent is to reduce a bunch of the boilerplate associated with validation of incoming requests, but nothing more than that.

One of the stumbling blocks I have come upon is threading model used in calling handlers. I am trying to understand if
1) there is only meant to be a single handler shared by multiple threads such that it must handle multithreading
2) the handler instances are somehow cloned.
3) one handler is being assigned to a single thread at a time.

Without me diving into the code to figure this out, can someone please clarify this? To me this would be a good addition to the handler guide.