we use Axis2 (1.5.6) in our application and we experience a problem with ThreadPool in configuration context.
We have own stub implementation and we call a webservice using sendReceiveNonBlocking of ServiceClient.
We create multiple instances of a stub in multiple threads, each having it's own configuration context. The lifetime of a stub is just for a few requests (the nature of our application does not allow much caching). However, as configuration context is created for each stub, there is also a new ThreadPool. A request is made, new Axis2 Task is created and added to the pool. After few such cycles, we have a lot of 'Axis2 task' threads, that are doing nothing (stub that used the configuration context is no more used).
What is a proper way of finalizing the stub/configuration context/thread pool? I was successful only by using the shutdownNow() method of a threadpool executor.