Use CDI and the new CDI 2.0 to automatically manage the lifecycle of your application’s beans using predefined scopes and define custom lifecycles using scopes. In this book, you will see how you can implement dynamic and asynchronous communication between separate beans in your application with CDI events.
The authors explain how to add new capabilities to the CDI platform by implementing these capabilities as extensions. They show you how to use CDI in a Java SE environment with the new CDI initialization and configuration API, and how to dynamically modify the configuration of beans at application startup by using dynamic bean building.
Use qualifier annotations to inject specific bean implementations
Programmatically retrieve bean instances from the CDI container in both Java SE and Java EE when injecting them into an object isn’t possible
Dynamically replace beans using the @Alternative annotation to, for example, replace a bean with a mock version for testing
Work with annotation literals to get instances of annotations to use with the CDI API
Discover how scopes and events interact