Check whether the factory classes are duplicated in the war and the jar file in which you have deployed your factories.
This duplication of classes could be the problem.
The are not deployed in both packages - here is a psuedo snippet of what I am doing :
again - Servlet is deployed as a WAR
FactoryA is packaged in stuff_classes.jar and dropped in ../default/lib
1. create and call FactoryA's configurator FactoryAConfigurator.
2. FactoryAConfigurator does a FactoryA.makeInstance().setArguments();
3. FactoryA spits out a bunch of "I am alive messages"
4. When I make a call to the servlet, it in turn makes a call to FactoryA.makeInstance().configLocation() which should return the location ("/opt/config/") but instead returns null. This value is correct in the factory (other factories use this factory - and the all succeed)
I currently have no classpath's set - instead relying on ../default/deply and ../default/lib