Installing and configuring PrimeFaces Extensions
The PrimeFaces Extensions library comes with a single JAR and does not require any mandatory third-party libraries. To use the PrimeFaces Extensions library in any web projects, just make sure to add the compatible PrimeFaces library and any JavaServer Faces implementations, such as Oracle Mojarra or Apache MyFaces.
At the time of writing this book, the latest version of PrimeFaces Extensions is 1.2.1, which is compatible with PrimeFaces 4.0.
You can download the PrimeFaces Extensions library either manually or through a Maven download from the Maven central repository.
The Maven coordinates for the PrimeFaces Extensions library are as follows:
If you are interested in using snapshot releases in your web project in order to get newly added components that do not exist in the recent major release or bug fixes, then add the Sonatype snapshot repository to your project configurations.
PrimeFaces Extensions uses the CloudBees platform and Jenkins as its continuous integration tool. It builds the PrimeFaces Extensions project resources on a daily basis.
Note
The snapshot releases are not recommended to be used in the applications directly because they are currently in the development stage due to possible bugs and are not production-ready.
Maven users should configure the following repository in the project's pom.xml
file:
If you are not a Maven user, then download the PrimeFaces Extensions distribution directly from the following URL:
https://oss.sonatype.org/content/groups/public/org/primefaces/extensions/
Apart from the PrimeFaces Extensions library, we need to add the compatible PrimeFaces core library, apache.commons.lang3, and any JavaServer Faces implementations, such as Oracle's Mojarra or MyFaces.
In the following table, there is a list of mandatory dependencies to use the PrimeFaces Extensions library in your project:
Based on the PrimeFaces Extensions library version, you have to add the compatible JSF and PrimeFaces versions.
Note
The dependency for PrimeFaces is defined as a transitive dependency, so there is no need to include it explicitly. But it is also possible to exclude the PrimeFaces core transitive dependency with the help of the dependencyManagement
tag so that you can use other versions apart from the one defined by this transitive dependency.
Proceed with the following usage of the dependencyManagement
tag to exclude the transitive dependency and use the other versions of PrimeFaces:
Based on the PrimeFaces Extensions library's features that you want to use, you may need to use some third-party libraries. The following table describes the list of optional dependencies needed to use any particular feature:
The list of maven coordinates for the preceding optional dependencies is shown as follows:
Note
Please refer to the JobHub application's pom.xml
file in GitHub for the preceding configuration's details.
If you are using the iText library in your project, then don't forget to add the following exclusions in your iText Maven dependency (these APIs are not required for the PDF Exporter component):
The following section shows the steps to install and configure PrimeFaces Extensions to your project. It has been split up into instructions for Maven users and non-Maven users.
If you are a Maven user, perform the following steps:
Add the following PrimeFaces Extensions library's Maven dependency to your pom.xml
file; it will download the library from the Maven central repository as follows:
Add the following PrimeFaces core Maven dependency to your pom.xml
file; it will be downloaded to the library from the Maven central repository as follows:
For the projects using lower versions of the PrimeFaces library, you have to add the PrimeFaces Maven repository to the repository list in pom.xml
as follows:
The PrimeFaces core dependency is optional for Maven users because the PrimeFaces Extensions library has transitive dependency for the PrimeFaces core. This step is only required when you are going to use other PrimeFaces versions over the default PrimeFaces transitive dependency with the help of the dependencyManagement
tag.
Configure the following code for either of the JSF dependencies in your project's pom.xml
file:
The following is an equivalent block of code:
If you are a non-Maven user, perform the following steps:
Download the PrimeFaces Extensions 1.2.1 library from the Maven central repository and add it to the classpath.
Download PrimeFaces-4.0.jar
from http://www.primefaces.org/downloads.html and add it to the classpath.
Download either the Oracle Mojarra or Apache MyFaces JSF implementation from their official site and add it to the classpath.
Download the optional dependencies, such as POI, iText, CKEditor, and CodeMirror, and add them to the classpath based on your application requirement.