Locale

Input Style

Free Themes

Built-in component themes created by the PrimeFaces Theme Designer.

PrimeOne Design

Saga Saga
Vela Vela
Arya Arya

Premium Themes

Premium themes are only available exclusively for PrimeFaces Theme Designer subscribers and therefore not included in PrimeFaces core.

bootstrap4-blue-light Bootstrap Blue
bootstrap4-purple-light Bootstrap Purple
bootstrap4-blue-dark Bootstrap Blue
bootstrap4-purple-dark Bootstrap Purple

Legacy Free Themes

Luna Amber Luna Amber
Luna Blue Luna Blue
Luna Green Luna Green
Luna Pink Luna Pink
Nova Nova
Nova Nova Alt
Nova Nova Accent

PREMIUM TEMPLATES

Create awesome applications in no time using the premium templates and impress your users.

DataTable Row Grouping

Rows can be grouped in two ways, using rowGroup component or with groupRow attribute on a column.

Header Row
RepresentativeNameCountryCompanyStatusDate
Amy Elsner
Amy ElsnerDarci Poquette JapanCommercial Press QUALIFIED02/24/2021
Amy ElsnerIzzy Garufi JapanBuckley Miller Wright PROPOSAL02/14/2021
Total Customers:2
Anna Fali
Anna FaliJeanfrancois Venere SpainRousseaux, Michael Esq RENEWAL02/13/2021
Anna FaliChavez Briddick IndiaBuckley Miller Wright RENEWAL03/01/2021
Anna FaliAntonio Caudy SpainBenton, John B Jr NEW03/03/2021
Anna FaliChavez Briddick SpainFeltz Printing Service PROPOSAL02/12/2021
Total Customers:4
Asiya Javayant
Asiya JavayantSilvio Slusarski AustraliaKing, Christopher A Esq NEGOTIATION02/22/2021
Asiya JavayantSilvio Slusarski BrazilRousseaux, Michael Esq NEGOTIATION02/14/2021
Total Customers:2
Bernardo Dominic
Bernardo DominicRicardo Gaucho BrazilRousseaux, Michael Esq RENEWAL03/04/2021
Bernardo DominicTony Foller AustraliaFeltz Printing Service QUALIFIED02/14/2021
Bernardo DominicFaith Gillian BrazilFeiner Bros QUALIFIED02/09/2021
Bernardo DominicJohnson Sergi GermanyChanay, Jeffrey A Esq RENEWAL02/05/2021
Bernardo DominicAruna Figeroa JapanFeltz Printing Service UNQUALIFIED03/05/2021
Bernardo DominicNicolas Iturbide GermanyBuckley Miller Wright NEGOTIATION02/23/2021
Bernardo DominicIzzy Garufi IndiaTruhlar And Truhlar Attys NEW02/15/2021
Total Customers:7
Elwin Sharvill
Elwin SharvillKadeem Flosi CanadaChapman, Ross E Esq NEGOTIATION02/26/2021
Elwin SharvillMayumi Kolmetz RussiaChemel, James L Cpa NEGOTIATION03/01/2021
Elwin SharvillOctavia Malet SpainCommercial Press NEW02/16/2021
Elwin SharvillSalvatore Stockham IndiaPrinting Dimensions PROPOSAL02/11/2021
Elwin SharvillAruna Figeroa ArgentinaRousseaux, Michael Esq NEW02/17/2021
Elwin SharvillKaitlin Ostrosky RussiaChemel, James L Cpa NEGOTIATION03/04/2021
Elwin SharvillMujtaba Nicka CanadaBuckley Miller Wright RENEWAL02/28/2021
Elwin SharvillSalvatore Stockham IndiaTruhlar And Truhlar Attys NEGOTIATION02/11/2021
Elwin SharvillLeja Caldarera United KingdomDorl, James J Esq PROPOSAL03/02/2021
Total Customers:9
Ioni Bowcher
Ioni BowcherJulie Stenseth BrazilRousseaux, Michael Esq QUALIFIED02/04/2021
Ioni BowcherJohnson Sergi ItalyTruhlar And Truhlar Attys QUALIFIED02/10/2021
Ioni BowcherDavid Darakjy JapanBuckley Miller Wright NEGOTIATION02/24/2021
Ioni BowcherArvin Albares BrazilTruhlar And Truhlar Attys NEGOTIATION02/08/2021
Ioni BowcherOctavia Malet CanadaFeiner Bros PROPOSAL02/17/2021
Ioni BowcherLeja Caldarera FranceChemel, James L Cpa PROPOSAL02/05/2021
Total Customers:6
Ivan Magalhaes
Ivan MagalhaesWickens Nestle AustraliaChapman, Ross E Esq UNQUALIFIED02/21/2021
Ivan MagalhaesGreenwood Bolognia ArgentinaDorl, James J Esq NEW03/03/2021
Ivan MagalhaesSinclair Waycott United KingdomChanay, Jeffrey A Esq UNQUALIFIED03/04/2021
Ivan MagalhaesAlejandro Perin JapanCommercial Press NEW03/05/2021
Ivan MagalhaesRicardo Gaucho GermanyTruhlar And Truhlar Attys NEGOTIATION02/07/2021
Ivan MagalhaesAika Inouye ArgentinaBuckley Miller Wright UNQUALIFIED02/22/2021
Total Customers:6
Onyama Limba
Onyama LimbaClifford Rim ArgentinaChapman, Ross E Esq RENEWAL02/16/2021
Onyama LimbaEmily Whobrey BrazilBuckley Miller Wright RENEWAL03/05/2021
Onyama LimbaAlejandro Perin AustraliaDorl, James J Esq UNQUALIFIED02/28/2021
Onyama LimbaAika Inouye CanadaDorl, James J Esq QUALIFIED02/19/2021
Onyama LimbaTony Foller GermanyRangoni Of Florence UNQUALIFIED03/05/2021
Onyama LimbaKaitlin Ostrosky FranceMorlong Associates NEGOTIATION02/15/2021
Onyama LimbaClaire Tollner IndiaDorl, James J Esq RENEWAL03/02/2021
Onyama LimbaClifford Rim AustraliaMorlong Associates UNQUALIFIED03/04/2021
Total Customers:8
Stephen Shaw
Xuxue Feng
Xuxue FengJefferson Schemmer ItalyPrinting Dimensions QUALIFIED02/10/2021
Xuxue FengFaith Gillian JapanBuckley Miller Wright RENEWAL02/14/2021
Xuxue FengAika Inouye AustraliaChemel, James L Cpa RENEWAL03/03/2021
Total Customers:3
Rowspan
RepresentativeNameCountryCompanyStatusDate
Amy ElsnerDarci Poquette JapanCommercial Press QUALIFIED02/24/2021
Amy ElsnerIzzy Garufi JapanBuckley Miller Wright PROPOSAL02/14/2021
Anna FaliJeanfrancois Venere SpainRousseaux, Michael Esq RENEWAL02/13/2021
Anna FaliChavez Briddick IndiaBuckley Miller Wright RENEWAL03/01/2021
Anna FaliAntonio Caudy SpainBenton, John B Jr NEW03/03/2021
Anna FaliChavez Briddick SpainFeltz Printing Service PROPOSAL02/12/2021
Asiya JavayantSilvio Slusarski AustraliaKing, Christopher A Esq NEGOTIATION02/22/2021
Asiya JavayantSilvio Slusarski BrazilRousseaux, Michael Esq NEGOTIATION02/14/2021
Bernardo DominicRicardo Gaucho BrazilRousseaux, Michael Esq RENEWAL03/04/2021
Bernardo DominicTony Foller AustraliaFeltz Printing Service QUALIFIED02/14/2021
Bernardo DominicFaith Gillian BrazilFeiner Bros QUALIFIED02/09/2021
Bernardo DominicJohnson Sergi GermanyChanay, Jeffrey A Esq RENEWAL02/05/2021
Bernardo DominicAruna Figeroa JapanFeltz Printing Service UNQUALIFIED03/05/2021
Bernardo DominicNicolas Iturbide GermanyBuckley Miller Wright NEGOTIATION02/23/2021
Bernardo DominicIzzy Garufi IndiaTruhlar And Truhlar Attys NEW02/15/2021
Elwin SharvillKadeem Flosi CanadaChapman, Ross E Esq NEGOTIATION02/26/2021
Elwin SharvillMayumi Kolmetz RussiaChemel, James L Cpa NEGOTIATION03/01/2021
Elwin SharvillOctavia Malet SpainCommercial Press NEW02/16/2021
Elwin SharvillSalvatore Stockham IndiaPrinting Dimensions PROPOSAL02/11/2021
Elwin SharvillAruna Figeroa ArgentinaRousseaux, Michael Esq NEW02/17/2021
Elwin SharvillKaitlin Ostrosky RussiaChemel, James L Cpa NEGOTIATION03/04/2021
Elwin SharvillMujtaba Nicka CanadaBuckley Miller Wright RENEWAL02/28/2021
Elwin SharvillSalvatore Stockham IndiaTruhlar And Truhlar Attys NEGOTIATION02/11/2021
Elwin SharvillLeja Caldarera United KingdomDorl, James J Esq PROPOSAL03/02/2021
Ioni BowcherJulie Stenseth BrazilRousseaux, Michael Esq QUALIFIED02/04/2021
Ioni BowcherJohnson Sergi ItalyTruhlar And Truhlar Attys QUALIFIED02/10/2021
Ioni BowcherDavid Darakjy JapanBuckley Miller Wright NEGOTIATION02/24/2021
Ioni BowcherArvin Albares BrazilTruhlar And Truhlar Attys NEGOTIATION02/08/2021
Ioni BowcherOctavia Malet CanadaFeiner Bros PROPOSAL02/17/2021
Ioni BowcherLeja Caldarera FranceChemel, James L Cpa PROPOSAL02/05/2021
Ivan MagalhaesWickens Nestle AustraliaChapman, Ross E Esq UNQUALIFIED02/21/2021
Ivan MagalhaesGreenwood Bolognia ArgentinaDorl, James J Esq NEW03/03/2021
Ivan MagalhaesSinclair Waycott United KingdomChanay, Jeffrey A Esq UNQUALIFIED03/04/2021
Ivan MagalhaesAlejandro Perin JapanCommercial Press NEW03/05/2021
Ivan MagalhaesRicardo Gaucho GermanyTruhlar And Truhlar Attys NEGOTIATION02/07/2021
Ivan MagalhaesAika Inouye ArgentinaBuckley Miller Wright UNQUALIFIED02/22/2021
Onyama LimbaClifford Rim ArgentinaChapman, Ross E Esq RENEWAL02/16/2021
Onyama LimbaEmily Whobrey BrazilBuckley Miller Wright RENEWAL03/05/2021
Onyama LimbaAlejandro Perin AustraliaDorl, James J Esq UNQUALIFIED02/28/2021
Onyama LimbaAika Inouye CanadaDorl, James J Esq QUALIFIED02/19/2021
Onyama LimbaTony Foller GermanyRangoni Of Florence UNQUALIFIED03/05/2021
Onyama LimbaKaitlin Ostrosky FranceMorlong Associates NEGOTIATION02/15/2021
Onyama LimbaClaire Tollner IndiaDorl, James J Esq RENEWAL03/02/2021
Onyama LimbaClifford Rim AustraliaMorlong Associates UNQUALIFIED03/04/2021
Stephen ShawTony Foller AustraliaPrinting Dimensions UNQUALIFIED03/05/2021
Stephen ShawSalvatore Stockham ItalyKing, Christopher A Esq RENEWAL02/22/2021
Stephen ShawIsabel Bowley ItalyRangoni Of Florence NEW02/21/2021
Xuxue FengJefferson Schemmer ItalyPrinting Dimensions QUALIFIED02/10/2021
Xuxue FengFaith Gillian JapanBuckley Miller Wright RENEWAL02/14/2021
Xuxue FengAika Inouye AustraliaChemel, James L Cpa RENEWAL03/03/2021

<div class="card">
    <h5 class="first">Header Row</h5>
    <h:form>
        <p:dataTable var="customer" value="#{dtRowGroupView.customers}" sortBy="#{customer.representative.name}">
            <p:headerRow field="representative.name"
                         expandable="true" 
                         expanded="#{customer.representative.name != 'Stephen Shaw'}">
                
                <p:column colspan="6">
                    <div class="p-d-inline-flex p-ai-center" style="vertical-align: middle">
                        <p:graphicImage name="images/avatar/#{customer.representative.image}" library="demo" width="32" style="vertical-align: middle"/>
                        <h:outputText styleClass="p-ml-2" value="#{customer.representative.name}"/>
                    </div>
                </p:column>
            </p:headerRow>

            <p:column headerText="Representative">
                <h:outputText value="#{customer.representative.name}" />
            </p:column>

            <p:column headerText="Name">
                <h:outputText value="#{customer.name}" />
            </p:column>

            <p:column headerText="Country">
                <span class="flag flag-#{customer.country.code}" style="width: 30px; height: 20px"/>
                <h:outputText style="vertical-align: middle; margin-left: .5rem" value="#{customer.country}"/>
            </p:column>

            <p:column headerText="Company">
                <h:outputText value="#{customer.company}" />
            </p:column>

            <p:column headerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>

            <p:column headerText="Date">
                <h:outputText value="#{customer.date}">
                    <f:convertDateTime pattern="MM/dd/yyyy" type="localDate"/>
                </h:outputText>
            </p:column>

            <p:summaryRow>
                <p:column colspan="5" style="text-align:right">
                    <h:outputText value="Total Customers:"/>
                </p:column>
                <p:column>
                    <h:outputText value="#{dtRowGroupView.getTotalCount(customer.representative.name)}"/>
                </p:column>
            </p:summaryRow>
        </p:dataTable>
    </h:form>
</div>

<div class="card">
    <h5>Rowspan</h5>
    <h:form>
        <p:dataTable var="customer" value="#{dtRowGroupView.customers}">
            <p:column  headerText="Representative" groupRow="true">
                <p:graphicImage name="images/avatar/#{customer.representative.image}" library="demo"
                                width="32" style="vertical-align: middle"/>
                <h:outputText style="vertical-align: middle; margin-left: .5rem"
                              value="#{customer.representative.name}"/>
            </p:column>

            <p:column headerText="Name">
                <h:outputText value="#{customer.name}" />
            </p:column>

            <p:column headerText="Country">
                <span class="flag flag-#{customer.country.code}" style="width: 30px; height: 20px"/>
                <h:outputText style="vertical-align: middle; margin-left: .5rem" value="#{customer.country}"/>
            </p:column>

            <p:column headerText="Company">
                <h:outputText value="#{customer.company}" />
            </p:column>

            <p:column headerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>

            <p:column headerText="Date">
                <h:outputText value="#{customer.date}">
                    <f:convertDateTime pattern="MM/dd/yyyy" type="localDate"/>
                </h:outputText>
            </p:column>
        </p:dataTable>
    </h:form>
</div>