Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

MyFaces CODI consists of the following modules:

Required modules:

  • Core

Optional modules:

  • JEE/JSF (for 1.2 and 2.x)
  • JEE/BV
  • JEE/JPA
  • JSE/Message (advanced I18N)
  • JSE/Scripting

Optional configuration modules:

  • Alternative-Implementation
  • JSF-Alternative-configuration
  • Core-Alternative-configuration

Configuration - Getting Started

...

Code Block
xml
xml
titleOptional properties
<properties>
    <codi.version>1.0.0-SNAPSHOT</codi.version>
</properties>

...

CODI pre-packaged bundles

If you would like to test CODI or you need all modules provided by CODI, you can use an all-in-one JAR file.

Only use this bundle or the core and the single modules - but don't use both!

Code Block
xml
xml
titleOPTIONAL all-in-one dependency for JSF 1.2 projects - for CODI 0.9.x
<dependency>
    <groupId>org.apache.myfaces.extensions.cdi</groupId>
    <artifactId>myfaces-extcdi-dist-jsf12</artifactId>
    <version>${codi.version}</version>
    <scope>compile</scope>
</dependency>

...

Code Block
xml
xml
titleOPTIONAL all-in-one dependency for JSF 2.0 projects - for CODI 0.9.x
<dependency>
    <groupId>org.apache.myfaces.extensions.cdi</groupId>
    <artifactId>myfaces-extcdi-dist-jsf20</artifactId>
    <version>${codi.version}</version>
    <scope>compile</scope>
</dependency>

...

for CODI v1+

Code Block
xml
xml
titleOPTIONAL all-in-one dependency for JSF 1.2 projects

<dependency>
    <groupId>org.apache.myfaces.extensions.cdi.bundles</groupId>
    <artifactId>myfaces-extcdi-bundle-jsf12</artifactId>
    <version>${codi.version}</version>
    <scope>compile</scope>
</dependency>

or

Code Block
xml
xml
titleOPTIONAL all-in-one dependency for JSF 2.0 projects

<dependency>
    <groupId>org.apache.myfaces.extensions.cdi.bundles</groupId>
    <artifactId>myfaces-extcdi-bundle-jsf20</artifactId>
    <version>${codi.version}</version>
    <scope>compile</scope>
</dependency>



...

Optional Configuration

The basic idea is to use type-safe config or any custom approach which is possible due to @Alternative or @Specializes. However, sometimes you would like to use e.g. a property file or any other config-file format. Furthermore, new versions of Weld implement also @Alternative more strictly (at least versions which implement CDI v1.0). So it's more difficult to use the original approach. So CODI (v1+) provides two modules to get rid of this problem. (Due to Glassfish 3.1 bugs it's required to use Glassfish 3.2+.)

Alternative-Implementation (optional)

Code Block
xml
xml
titleOPTIONAL Alternative-Implementation module

<dependency>
    <groupId>org.apache.myfaces.extensions.cdi.modules.alternative</groupId>
    <artifactId>myfaces-extcdi-alternative-implementation-module</artifactId>
    <version>${codi.version}</version>
    <scope>compile</scope>
</dependency>

Alternative configuration modules (optional)

Alternative Core configuration module (optional)

Code Block
xml
xml
titleOPTIONAL Core Alternative-configuration module

<dependency>
    <groupId>org.apache.myfaces.extensions.cdi.modules.alternative</groupId>
    <artifactId>myfaces-extcdi-core-alternative-configuration</artifactId>
    <version>${codi.version}</version>
    <scope>compile</scope>
</dependency>

Alternative Jsf configuration module (optional)

Code Block
xml
xml
titleOPTIONAL JSF Alternative-configuration module

<dependency>
    <groupId>org.apache.myfaces.extensions.cdi.modules.alternative</groupId>
    <artifactId>myfaces-extcdi-jsf-alternative-configuration</artifactId>
    <version>${codi.version}</version>
    <scope>compile</scope>
</dependency>

Alternative configuration module bundle (optional)

Similar to the JSF bundles of CODI there is a config bundle which bundles the single modules described above.

Only use this bundle or the single config modules - but don't use both!

Code Block
xml
xml
titleOPTIONAL all-in-one dependency Alternative-configuration bundle

<dependency>
    <groupId>org.apache.myfaces.extensions.cdi.bundles</groupId>
    <artifactId>myfaces-extcdi-bundle-alternative-configuration</artifactId>
    <version>${codi.version}</version>
    <scope>compile</scope>
</dependency>