Permalink
Fetching contributors…
Cannot retrieve contributors at this time
127 lines (99 sloc) 8.13 KB

Liferay Faces Version Scheme

In this article, you'll explore the Liferay Faces versioning scheme, and what each component of a version means. Once you have the versioning scheme mastered, you can view several example configurations.

Liferay Faces Alloy

Provides a suite of JSF components that utilize AlloyUI.

Branch Example Artifact AlloyUI JSF API Additional Info
master (3.0.x) com.liferay.faces.alloy-3.0.0.jar 3.0.x 2.2+ AlloyUI 3.0.x is the version that comes bundled with Liferay Portal 7.0.
2.0.x com.liferay.faces.alloy-2.0.0.jar 2.0.x 2.1+ AlloyUI 2.0.x is the version that comes bundled with Liferay Portal 6.2.
1.0.x com.liferay.faces.alloy-1.0.0.jar 2.0.x 1.2 AlloyUI 2.0.x is the version that comes bundled with Liferay Portal 6.2.

Liferay Faces Bridge

Provides the ability to deploy JSF web applications as portlets within Apache Pluto, the reference implementation for JSR 286 (Portlet 2.0) and JSR 362 (Portlet 3.0).

Branch Example Artifacts Portlet API JSF API JCP Specification Additional Info
API: master (5.0.x)
IMPL: 5.0.x
com.liferay.faces.bridge.api-5.0.0.jar
com.liferay.faces.bridge.impl-5.0.0.jar
3.0 2.2 JSR 378 The Expert Group began work in September 2015 and the Specification is currently under development.
API: 4.0.x
IMPL: 4.0.x
com.liferay.faces.bridge.api-4.0.0.jar
com.liferay.faces.bridge.impl-4.0.0.jar
2.0 2.2 JSR 329 Includes non-standard bridge extensions for JSF 2.2.
API: 3.0.x
IMPL: 3.0.x
com.liferay.faces.bridge.api-3.0.0.jar
com.liferay.faces.bridge.impl-3.0.0.jar
2.0 2.1 JSR 329 Includes non-standard bridge extensions for JSF 2.1.
API: 2.0.x
IMPL: 2.0.x
com.liferay.faces.bridge.api-2.0.0.jar
com.liferay.faces.bridge.impl-2.0.0.jar
2.0 1.2 JSR 329 (MR1) Includes support for Maintenance Release 1 (MR1).
1.0.x N/A 1.0 1.2 JSR 301 N/A (Not Applicable) since Liferay Faces Bridge has never implemented JSR 301.

Liferay Faces Bridge Ext

Extension to Liferay Faces Bridge that provides compatibility with Liferay Portal and also takes advantage of Liferay-specific features such as friendly URLs.

Branch Example Artifact   Liferay Portal API     Bridge API     Portlet API   JSF API
6.0.x (planned) com.liferay.faces.bridge.ext-6.0.0.jar Future 5.0.x 3.0 2.2
master (5.0.x) com.liferay.faces.bridge.ext-5.0.0.jar 7.0.x 4.0.x 2.0 2.2
4.0.x RESERVED N/A N/A N/A N/A
3.0.x com.liferay.faces.bridge.ext-3.0.0.jar 6.2.x 4.0.x 2.0 2.2
2.0.x com.liferay.faces.bridge.ext-2.0.0.jar 6.2.x 3.0.x 2.0 2.1
1.0.x com.liferay.faces.bridge.ext-1.0.0.jar 6.2.x 2.0.x 2.0 1.2

Liferay Faces Metal

Provides a suite of JSF components that utilize metal.js.

Branch Example Artifact   MetalJS     JSF API   Additional Info
master (1.0.x) com.liferay.faces.metal-1.0.0.jar 1.0.x 2.2+ Metal.js 1.0.x is the version that comes bundled with Liferay Portal 7.0.

Liferay Faces Portal

Provides a suite of JSF components that are based on the JSP tags provided by Liferay Portal.

Branch Example Artifact Liferay Portal API     JSF API
master (3.0.x) com.liferay.faces.portal-3.0.0.jar 7.0.x 2.2+
2.0.x com.liferay.faces.portal-2.0.0.jar 6.2.x 2.1+
1.0.x com.liferay.faces.portal-1.0.0.jar 6.2.x 1.2

Liferay Faces Util

Library that contains general purpose JSF utilities to support many of the sub-projects that comprise Liferay Faces.

Branch Example Artifact   JSF API
master (3.0.x) com.liferay.faces.util-3.0.0.jar 2.2
2.0.x com.liferay.faces.util-2.0.0.jar 2.1
1.0.x com.liferay.faces.util-1.0.0.jar 1.2

Now that you know all about the Liferay Faces versioning scheme, you may be curious as to how these components interact with each other. Refer to the following figure to view the Liferay Faces dependency diagram.

Figure 1: The Liferay Faces dependency diagram helps visualize how components interact and depend on each other.

Next, you can view some example configurations to see the new versioning scheme in action.

Example Configurations

Liferay Portal 7.0: AlloyUI 3.0 / Metal 1.0 / Portlet 2.0 / JSF 2.2

<dependencies>
    <dependency>
        <groupId>com.liferay.faces</groupId>
        <artifactId>com.liferay.faces.alloy</artifactId>
        <version>3.0.0</version>
    </dependency>
    <dependency>
        <groupId>com.liferay.faces</groupId>
        <artifactId>com.liferay.faces.bridge.impl</artifactId>
        <version>4.0.0</version>
    </dependency>
    <dependency>
        <groupId>com.liferay.faces</groupId>
        <artifactId>com.liferay.faces.bridge.ext</artifactId>
        <version>5.0.0</version>
    </dependency>
    <dependency>
        <groupId>com.liferay.faces</groupId>
        <artifactId>com.liferay.faces.metal</artifactId>
        <version>1.0.0</version>
    </dependency>
    <dependency>
        <groupId>com.liferay.faces</groupId>
        <artifactId>com.liferay.faces.portal</artifactId>
        <version>3.0.0</version>
    </dependency>
</dependencies>

Apache Pluto 3.0: Portlet 3.0 / JSF 2.2

<dependencies>
    <dependency>
        <groupId>com.liferay.faces</groupId>
        <artifactId>com.liferay.faces.bridge.impl</artifactId>
        <version>5.0.0</version>
    </dependency>
</dependencies>