Book Description: In Pro CDI 2 in Java EE 8, use CDI and the CDI 2.0 to automatically manage the life cycle of your enterprise Java, Java EE, or Jakarta EE application’s beans using predefined scopes and define custom life cycles 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. This book is compatible with the new open source Eclipse Jakarta EE platform and tools. What You Will Learn 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 Who This Book Is For Those who have some experience with CDI, but may not have experience with some of the more advanced features in CDI.