We should state that it's possible to inject a managed or enterprise bean into a JSF managed bean because the injection, as you said, is based on the EL.

Why? If you are using 299 you aren't using JSF managed beans. If you are aren't using 299 then this isn't relevant.


If the injection goes the other way, the instance is the one created by JSR-299 and not the instance created by JSF; an important point to understand. Therefore, there could be two instances of a bean per scope. And from what you proposed, the JSR-299 bean always wins if it has the same name as a JSF managed bean.

Again, no, if 299 is active *it* manages the beans, so there are no JSF managed beans.

I'm saying if both containers are allowed to instantiate beans, you would be in this situation. So if you can get JSF managed beans to be disabled, then yes, 299 will manage the beans. But if we don't lay down some rules, then we will be in a situation where both containers are creating beans. That's all I'm saying.

-Dan

--
Dan Allen
Senior Software Engineer, Red Hat | Author of Seam in Action
Registered Linux User #231597

http://mojavelinux.com
http://mojavelinux.com/seaminaction
http://in.relation.to/Bloggers/Dan