Refactor Your Way to a Dependency Injection Container

a servlet container + jndi is an ioc container as well

it manages creation, init and destroy (object lifecycle) as well as the calls to doGet/doPost/service
it provides a way to wire the *components* it manages thru the service registry (jndi)

like it or not ;)

spring implements the same thing: it manages object lifecycle and wires the components (annotations, xml)