Skip to content

Latest commit

 

History

History
48 lines (31 loc) · 1.98 KB

preface.asciidoc

File metadata and controls

48 lines (31 loc) · 1.98 KB

Preface

Note

This part has to be rewritten to present a consitent history of the spec

Evaluation license

Organisation of this document

This document is organized in 4 parts:

  • An introduction (this part), which is not part of the specification but introduces CDI concepts and gives examples.

  • Core CDI specification: [part_1]. This part has two sections:

    • {cdi_lite} specification which contains a subset of CDI features and which can be implemented in more restricted environments;

    • {cdi_full} specification that builds on top of Lite and adds all advanced CDI features; this is the standard Jakarta EE CDI platform.

  • Specific CDI features for Java SE: [part_2].

  • Specific CDI features for Jakarta EE: [part_3].

Major changes

CDI 4.0 splits the CDI core into Lite and Full. Lite contains a subset of original features which are designed to work in more restricted environments. CDI Full contains everything that is in Lite plus all other features that were formerly in core CDI and are not in Lite.

Jakarta Contexts and Dependency Injection 3.0 (CDI 3.0) is an update to Jakarta Contexts and Dependency Injection 2.0 (CDI 2.0).

CDI 3.0 includes a change in the base namespace used by the APIs from javax to jakarta. For example, the BeanManager interface has moved from javax.enterprise.inject.spi.BeanManager to jakarta.enterprise.inject.spi.BeanManager.

New beans.xml 3.0 schema file has been added and the namespace of the beans_3_0.xsd schema file has changed from xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee" to xmlns:jakartaee="https://jakarta.ee/xml/ns/jakartaee".

Starting with version 2.0, CDI targets Java SE and Jakarta EE platforms. CDI in Java SE and CDI in a Jakarta EE container share the features defined in core CDI.