That's what we have been discussing earlier and what I tried to describe on the mailing list. Adding the reference to the API does help for WAR deployments, since there is a deployment unit processor in the AS web module which puts the implementation from the web module into the finder cache in the API module. That way the impl is returned when accessing the factory in the API module. Tests fail for other deployment types (e.g. RARs) where no such DUP is adding an EL impl to the cache.