Apache OpenWebBeans

Clone this repo:
  1. ba993bf [maven-release-plugin] prepare for next development iteration by Mark Struberg · 4 days ago main
  2. 6ef6c50 [maven-release-plugin] prepare release openwebbeans-4.1.0 by Mark Struberg · 4 days ago openwebbeans-4.1.0
  3. 67914d0 OWB-1458 fix javadoc plugin after parent update by Mark Struberg · 4 days ago
  4. 22324c2 OWB-1462 upgrdae to xbean 4.30 by Mark Struberg · 4 days ago
  5. dc71b05 Merge pull request #131 from apache/dependabot/maven/jakarta.el-jakarta.el-api-6.0.1 by Thomas Andraschko · 4 days ago

Maven Central License Build Status Build Status ASF

Apache OpenWebBeans (OWB) - Apache's implementation of the Contexts and Dependency Injection (CDI) / Jakarta CDI specification

Branches

main

Jakarta CDI 4.1 implementation (Jakarta EE 11), requires Java 17+.

owb_4.0.x

owb_4.0.x
Jakarta CDI 4.0 implementation (Jakarta EE 10), requires Java 11+.

owb_2.0.x

owb_2.0.x
CDI 2.0 (JSR-365) implementation (Java EE 8), requires Java 8+.

owb_1.7.x

owb_1.7.x
CDI 1.2 (JSR-346) implementation (Java EE 7), requires Java 7+.

owb_1.2.x

owb_1.2.x
CDI 1.0 (JSR-299) implementation (Java EE 6), requires Java 5+.

Minimum Requirements (main)

  • Java 17+
  • CDI 4.1 (Jakarta CDI / Jakarta EE 11)
  • TCK compliant

Installation

mvn clean install

Usage

Core Dependency

<dependency>
    <groupId>org.apache.openwebbeans</groupId>
    <artifactId>openwebbeans-impl</artifactId>
    <version>${owb.version}</version>
</dependency>
<dependency>
    <groupId>org.apache.openwebbeans</groupId>
    <artifactId>openwebbeans-spi</artifactId>
    <version>${owb.version}</version>
</dependency>

Web / Servlet Integration

<dependency>
    <groupId>org.apache.openwebbeans</groupId>
    <artifactId>openwebbeans-web</artifactId>
    <version>${owb.version}</version>
</dependency>

JSF Integration

<dependency>
    <groupId>org.apache.openwebbeans</groupId>
    <artifactId>openwebbeans-jsf</artifactId>
    <version>${owb.version}</version>
</dependency>

Tomcat Integration

<dependency>
    <groupId>org.apache.openwebbeans</groupId>
    <artifactId>openwebbeans-tomcat</artifactId>
    <version>${owb.version}</version>
</dependency>

Arquillian Integration (Testing)

<dependency>
    <groupId>org.apache.openwebbeans</groupId>
    <artifactId>openwebbeans-arquillian</artifactId>
    <version>${owb.version}</version>
    <scope>test</scope>
</dependency>

JUnit 5 Integration (Testing)

<dependency>
    <groupId>org.apache.openwebbeans</groupId>
    <artifactId>openwebbeans-junit5</artifactId>
    <version>${owb.version}</version>
    <scope>test</scope>
</dependency>

Modules

OWB is modularly built — a full CDI container in under 1 MB total. Available modules include:

  • openwebbeans-impl — core CDI container implementation
  • openwebbeans-spi — SPI interfaces
  • openwebbeans-web — Servlet / web container integration
  • openwebbeans-jsf — Jakarta Faces integration
  • openwebbeans-tomcat — Apache Tomcat integration
  • openwebbeans-jetty9 — Jetty 9 integration
  • openwebbeans-ejb — EJB integration
  • openwebbeans-jms — JMS integration
  • openwebbeans-el22 — EL 2.2+ integration
  • openwebbeans-osgi — OSGi environment support
  • openwebbeans-se — Java SE standalone support
  • openwebbeans-slf4j — SLF4J logging bridge
  • openwebbeans-junit5 — JUnit 5 test support
  • openwebbeans-arquillian — Arquillian test support
  • openwebbeans-gradle — Gradle build support

Java SE Usage

OWB can run as a standalone CDI container in plain Java SE applications (Swing, JavaFX, Eclipse RCP, etc.) without any application server or servlet container.

More Information

Please visit https://openwebbeans.apache.org for full documentation, examples, and release notes.

Issue tracker: https://issues.apache.org/jira/browse/OWB