I thought that JNDI biding occurs first, pretty much before anything else. Hence the _LazyValidatorFactory_ which then gets replaced with a CDI enabled factory. Of course no other component should have gotten the _LazyValidatorFactory_ from JNDI until CDI started. @scottmarlow, is there a guaranteed order in which things occur?