Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Java EE 5 dependency injection?

Since Java EE 5 does not have CDI, how does DI work in here?

Can an EJB be injected with @EJB in a class that is a non-EJB? Can an EntityManager be injected with @PersistenceContext in a class that is a non-EJB (container managed not resource local EntityManager)? Or the only solution to bring the resources in non-EJB classes is by JNDI lookup?

By non-EJB class I mean a class that is not annotated with @Stateless/@Statefull or others.

like image 687
Random42 Avatar asked Nov 23 '12 13:11

Random42


1 Answers

Taken from: http://www.oracle.com/technetwork/articles/javaee/injection-141192.html

Keep in mind that a Java EE 5 platform container can handle the injections transparently only when they are used on container-managed components, such as EJB beans, Servlets, and JavaServer Pages (JSP) technology tag handlers.

onjava has an article: http://onjava.com/pub/a/onjava/2006/01/04/dependency-injection-java-ee-5.html

It presents a readable table of which managed-components (per container) that support injection of what type of resources.

like image 199
Aksel Willgert Avatar answered Sep 21 '22 23:09

Aksel Willgert