Pseudo scopes

Pseudo scopes result in beans that do not have a client proxy created by Weld, but instead a new instance is created each time and the client holds a direct reference to it. @Dependent is a scope annotation that is a pseudo scope type, and @Dependent is also the default scope for any beans that do not explicitly declare a scope.

Beans with a scope of @Dependent are never shared; it is a dependent object of whichever object it was injected into. This means that the @Dependent bean is created at the point when the object it belongs to is created, and is destroyed when the object it belongs to is destroyed.

Tip

Accessing a @Dependent bean by its EL name will cause a new instance of that bean to be created every time the expression is ...

Get JBoss Weld CDI for Java Platform now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.