8.0

Latest release in branch 8.0
Released 6 years ago (March 05, 2020)

Software PrimeFaces
Branch 8.0
First official release version 8.0
First official release date 6 years ago (March 05, 2020)
Release notes https://github.com/primefaces/primefaces/releases/tag/8.0
Source code https://github.com/primefaces/primefaces/tree/8.0-RELEASE
Documentation https://javadoc.io/doc/org.primefaces/primefaces/8.0/index.html
Download https://mvnrepository.com/artifact/org.primefaces/primefaces/8.0
PrimeFaces 8.0 Releases View full list

What Is New in PrimeFaces 8.0

PrimeFaces 8.0 is a major release focused on modernizing the library to align with the latest Java EE and JSF standards. The update brings significant dependency upgrades, new components, and a host of improvements.

Category Key Changes
Dependencies Upgraded to JSF 2.3, Java 8+, and EL 3.0. Removed deprecated libraries.
New Components Introduces the new <p:badge> component.
Improvements Enhanced accessibility (a11y), theme updates, and client-side API changes.
Deprecations Legacy components and attributes have been marked for removal.
Bug Fixes Numerous issues resolved across the component suite.

How Did Dependencies Change in 8.0?

The foundation of PrimeFaces 8.0 was rebuilt on modern specifications. This shift is crucial for compatibility with current application servers and JDKs.

JSF 2.3 is now the minimum required version, bringing built-in CDI injection and other modern features. The library also requires Java 8 or higher and Expression Language (EL) 3.0. Legacy JARs like jsf-impl and el-impl have been completely removed from the distribution.

What New Components Were Added?

PrimeFaces 8.0 introduces the <p:badge> component for displaying numerical indicators and status markers. This component is highly customizable and fits seamlessly into the existing ecosystem of PrimeFaces components.

In practice, it's perfect for showing unread message counts, notification bubbles, or simple status labels. It works well alongside components like <p:avatar> and within menus.

Were There Accessibility Improvements?

Yes, accessibility received significant attention in this release. The goal was to improve screen reader support and keyboard navigation across many components.

Key updates include better ARIA attribute handling and improved focus management for components like <p:selectOneMenu> and <p:dataTable>. This matters because it makes applications built with PrimeFaces usable by a wider audience.

What Was Removed or Deprecated?

Version 8.0 continues the cleanup of legacy APIs. Several previously deprecated components and attributes have been officially removed, paving the way for a leaner library.

For example, the old org.primefaces.util.Constants class has been removed. Developers should use the new constants in org.primefaces.virusscan.VirusTotal and org.primefaces.virusscan.ClamAV for virus scanning integration instead.

How Did Theming and Styling Evolve?

Theming received updates to ensure consistency and modern aesthetics. The built-in themes were refined to provide a more polished look and feel out of the box.

These changes are most visible in form components and data tables, where spacing, colors, and overall visual hierarchy were improved. The SASS variable structure for custom theme creation was also enhanced for greater flexibility.

FAQ

Is PrimeFaces 8.0 compatible with Java 11?
Yes, absolutely. PrimeFaces 8.0 requires Java 8 as a minimum but is fully compatible with Java 11 and beyond. The upgrade to modern EL and JSF dependencies makes it ideal for newer JDKs.

I'm upgrading from PF 7.x. What's the biggest breaking change?
The mandatory upgrade to JSF 2.3 is the most significant hurdle. You must ensure your application server or project dependencies are updated to support JSF 2.3 before migrating your PrimeFaces version.

What happened to the Virus Scan feature?
The virus scanning API was refactored. The old Constants are gone. You now need to use the new constants in the org.primefaces.virusscan.VirusTotal and org.primefaces.virusscan.ClamAV classes.

Does the new badge component support dynamic updates?
Yes, like most PrimeFaces components, <p:badge> can be updated dynamically via AJAX and supports all standard JSF lifecycle features.

Were any client-side JavaScript APIs changed?
Yes, some internal client-side widget APIs were modified for consistency. If you have extended PrimeFaces components with custom JavaScript, you should test thoroughly as some private methods may have changed.

Releases In Branch 8.0

Version Release date
8.0 6 years ago
(March 05, 2020)