Jboss just announced the first preview release of Web beans, their dependency injection and contextual lifecycle management framework.
Web beans is an implementation of JSR-299 which defines a set of services for the Java EE environment that makes applications much easier to develop. JSR-299 layers an enhanced lifecycle and interaction model over existing Java component types including JavaBeans and Enterprise Java Beans. As a complement to the traditional Java EE programming model, the services provide:
- an improved lifecycle for stateful components, bound to well-defined contexts
- a typesafe approach to dependency injection
- interaction via an event notification facility
- a better approach to binding interceptors to components, along with a new kind of interceptor, called a decorator, that is more appropriate for use in solving business problems.
The specification is especially useful in the context of web applications, but is applicable to many different kinds of applications and may even be used in the Java SE context, in conjunction with an embeddable EJB Lite container, as defined in the EJB 3.1 specification.