JBoss Weld CDI for Java Platform

JBoss Weld CDI for Java Platform
eBook: $13.99
Formats: PDF, PacktLib, ePub and Mobi formats
save 15%!
Print + free eBook + free PacktLib access to the book: $43.98    Print cover: $29.99
save 32%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Table of Contents
Sample Chapters
  • Learn about dependency injection with CDI
  • Install JBoss Weld in your favorite container
  • Develop your own extension to CDI
  • Decouple code with CDI events
  • Communicate between CDI beans and AngularJS

Book Details

Language : English
Paperback : 122 pages [ 235mm x 191mm ]
Release Date : July 2013
ISBN : 1782160183
ISBN 13 : 9781782160182
Author(s) : Ken Finnigan
Topics and Technologies : All Books, Application Development, Java, JBoss, Open Source

Table of Contents

Chapter 1: What is a Bean?
Chapter 2: Dependency Injection and Lookup
Chapter 3: Deploying JBoss Weld
Chapter 4: Scopes and Contexts
Chapter 5: Producers
Chapter 6: Interceptors and Decorators
Chapter 7: Events
Chapter 8: Writing a Portable Extension
Chapter 9: Book Store – CDI Services
Chapter 10: Book Store – User Interfaces
  • Chapter 1: What is a Bean?
    • The history of beans
    • Definition of a bean
    • Is my class a bean?
    • What does it mean to be a bean?
      • Bean types
      • Qualifiers
      • Scope
      • Expression Language (EL)
      • Alternatives
    • Which classes are beans?
      • Managed Beans
      • Session Beans
      • Producers
        • Producer methods
        • Producer fields
    • Summary
    • Chapter 2: Dependency Injection and Lookup
      • What is an injection point?
        • Typesafe resolution
      • Qualifiers
        • @Default and @Any
        • Qualifier members
      • Alternatives
      • Resolving Weld deployment errors
      • Client proxies
        • Unproxyable bean types
      • Programmatic lookup of contextual instances
      • Injection point metadata
      • Summary
        • Chapter 4: Scopes and Contexts
          • Scope types
          • Built-in scopes
            • The request context lifecycle
            • The session context lifecycle
            • The application context lifecycle
          • The conversation scope
            • The conversation context lifecycle
            • Conversation propagation
            • Conversation timeout
          • Pseudo scopes
          • Custom scopes
          • Summary
          • Chapter 5: Producers
            • The scope of a producer
            • Injection into producer methods
            • Dependent beans for producers
            • Cleanup of produced beans
            • Summary
            • Chapter 6: Interceptors and Decorators
              • Interceptor bindings
              • Creating and enabling an interceptor
              • Advanced interceptors
                • Interceptor binding types with members
                • Combining interceptor binding types
                • Inheritance of interceptor binding types
              • What is a decorator delegate?
              • Enabling a decorator
              • Summary
              • Chapter 7: Events
                • What is a payload?
                • How do I listen for an event?
                • How do I fire an event?
                • Event qualifiers
                  • Members of event qualifiers
                  • Combining event qualifiers
                • Observing events in different transaction phases
                • Event-observer bean creation
                • Summary
                • Chapter 8: Writing a Portable Extension
                  • What is a portable extension?
                  • What is the CDI container lifecycle?
                  • BeanManager
                  • Injection into non-container managed instances
                  • Registering a bean
                    • Replacing annotations on a type via an extension
                  • Summary
                  • Chapter 9: Book Store – CDI Services
                    • Overview of the application
                    • Adding interceptors for our services
                      • Securing methods with an interceptor
                      • Providing a transaction with an interceptor
                    • Creating CDI services
                    • Summary

                      Ken Finnigan

                      Ken Finnigan is a Senior Software Engineer at Red Hat, technical lead of the JBoss Portlet Bridge project, a member of the GateIn development team, and the founder of the Arquillian Portal Extension. As a consultant and engineer he has over 15 years development experience with enterprises throughout the world using technologies that include Java EE frameworks (JSF, CDI, EJB3, Hibernate, and Seam), Java testing frameworks (Arquillian, JUnit, and TestNG), Maven, Ant, and a variety of others. In his spare time, he is a committer for Apache DeltaSpike, ShrinkWrap, and Arquillian. He is also the author of GateIn Cookbook, Packt Publishing.
                      Sorry, we don't have any reviews for this title yet.

                      Code Downloads

                      Download the code and support files for this book.

                      Submit Errata

                      Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.

                      Sample chapters

                      You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

                      Frequently bought together

                      JBoss Weld CDI for Java Platform +    Java 7 New Features Cookbook =
                      50% Off
                      the second eBook
                      Price for both: £17.25

                      Buy both these recommended eBooks together and get 50% off the cheapest eBook.

                      What you will learn from this book

                      • Install JBoss Weld in an application server
                      • Learn CDI dependency injection type lookup rules
                      • Create dynamic beans with producers
                      • Fire and observe events to decouple beans
                      • Use interceptors and decorators for cross-cutting concerns
                      • Understand the sequence of the JBoss Weld container lifecycle
                      • Create your own CDI portable extension
                      • Access CDI beans from AngularJS
                      • Learn how scopes and contexts work and what CDI provides

                      In Detail

                      CDI simplifies dependency injection for modern application developers by taking advantage of Java annotations and moving away from complex XML, while at the same time providing an extensible and powerful programming model.

                      "JBoss Weld CDI for Java Platform" is a practical guide to CDI's dependency injection concepts using clear and easy-to-follow examples. This will help you take advantage of the power behind CDI, as well as providing a firm understanding of how to use it within your applications.

                      "JBoss Weld CDI for Java Platform" covers all the major aspects of CDI, breaking it down into understandable pieces. This book will take you through many examples of how these concepts can be utilized, helping you get up and running quickly and painlessly.

                      "JBoss Weld CDI for Java Platform" gives you an insight into the different scopes provided by CDI and the use cases for which each has been designed. You will learn everything about dependency injection, scopes, events, producers, and more from JBoss Weld CDI, as well as how producers can create new beans for consumption within your application. You will also learn how to build a real world application with CDI using JSF and AngularJS for different web interfaces.


                      This book is a mini tutorial with plenty of code examples and strategies to give you numerous options when building your own applications.

                      Who this book is for

                      "JBoss Weld CDI for Java Platform" is written for developers who are new to dependency injection. A rudimentary knowledge of Java is required.

                      Code Download and Errata
                      Packt Anytime, Anywhere
                      Register Books
                      Print Upgrades
                      eBook Downloads
                      Video Support
                      Contact Us
                      Awards Voting Nominations Previous Winners
                      Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
                      Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software