Locale

Change the locale of the datepicker, schedule and client side validation messages.

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 Group

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

Header Row
RepresentativeNameCountryCompanyStatusDate
Amy Elsner
Amy ElsnerOctavia Malet CanadaBenton, John B Jr UNQUALIFIED05/24/2021
Amy ElsnerJulie Stenseth GermanyMorlong Associates QUALIFIED06/03/2021
Amy ElsnerMurillo Malet BrazilDorl, James J Esq RENEWAL06/11/2021
Amy ElsnerJohnson Sergi BrazilBuckley Miller Wright UNQUALIFIED05/26/2021
Amy ElsnerAntonio Caudy ArgentinaChanay, Jeffrey A Esq NEGOTIATION06/03/2021
Amy ElsnerMaria Marrier ArgentinaFeiner Bros RENEWAL05/28/2021
Total Customers:6
Anna Fali
Anna FaliDeepesh Chui ItalyChapman, Ross E Esq NEGOTIATION05/18/2021
Anna FaliAditya Kusko SpainDorl, James J Esq RENEWAL06/05/2021
Total Customers:2
Asiya Javayant
Asiya JavayantJeanfrancois Venere United KingdomPrinting Dimensions NEGOTIATION05/20/2021
Asiya JavayantJones Vocelka AustraliaKing, Christopher A Esq PROPOSAL05/21/2021
Asiya JavayantJones Vocelka FranceCommercial Press PROPOSAL05/21/2021
Asiya JavayantMorrow Ruta CanadaCommercial Press NEW06/13/2021
Asiya JavayantStacey Maclead AustraliaFeltz Printing Service UNQUALIFIED06/03/2021
Asiya JavayantArvin Albares RussiaChanay, Jeffrey A Esq UNQUALIFIED06/05/2021
Total Customers:6
Bernardo Dominic
Bernardo DominicMayumi Kolmetz GermanyBenton, John B Jr RENEWAL06/03/2021
Bernardo DominicIzzy Garufi FranceCommercial Press UNQUALIFIED05/19/2021
Bernardo DominicCody Saylors RussiaDorl, James J Esq RENEWAL05/20/2021
Bernardo DominicAruna Figeroa RussiaMorlong Associates QUALIFIED05/30/2021
Bernardo DominicAntonio Caudy RussiaBenton, John B Jr RENEWAL06/09/2021
Bernardo DominicIsabel Bowley BrazilKing, Christopher A Esq NEGOTIATION06/14/2021
Bernardo DominicGreenwood Bolognia AustraliaChemel, James L Cpa QUALIFIED06/11/2021
Bernardo DominicAntonio Caudy BrazilRangoni Of Florence PROPOSAL06/09/2021
Total Customers:8
Elwin Sharvill
Elwin SharvillJuan Wieser BrazilFeiner Bros NEW05/28/2021
Elwin SharvillJones Vocelka United KingdomChapman, Ross E Esq UNQUALIFIED05/31/2021
Elwin SharvillClaire Tollner JapanMorlong Associates PROPOSAL05/23/2021
Total Customers:3
Ioni Bowcher
Ioni BowcherRicardo Gaucho ItalyChanay, Jeffrey A Esq NEW06/06/2021
Ioni BowcherJulie Stenseth RussiaFeltz Printing Service QUALIFIED06/13/2021
Ioni BowcherCosta Dilliard RussiaChanay, Jeffrey A Esq QUALIFIED06/09/2021
Ioni BowcherLeon Oldroyd ArgentinaTruhlar And Truhlar Attys RENEWAL06/15/2021
Total Customers:4
Ivan Magalhaes
Ivan MagalhaesJames Butt CanadaDorl, James J Esq UNQUALIFIED06/05/2021
Ivan MagalhaesWickens Nestle United KingdomBuckley Miller Wright QUALIFIED05/19/2021
Ivan MagalhaesNicolas Iturbide IndiaChanay, Jeffrey A Esq NEGOTIATION06/03/2021
Total Customers:3
Onyama Limba
Onyama LimbaDeepesh Chui JapanPrinting Dimensions UNQUALIFIED05/24/2021
Onyama LimbaClifford Rim CanadaFeiner Bros UNQUALIFIED05/22/2021
Onyama LimbaSinclair Waycott JapanDorl, James J Esq RENEWAL05/18/2021
Onyama LimbaIzzy Garufi GermanyTruhlar And Truhlar Attys NEW05/31/2021
Onyama LimbaStacey Maclead IndiaBenton, John B Jr UNQUALIFIED05/31/2021
Onyama LimbaMurillo Malet GermanyChapman, Ross E Esq UNQUALIFIED05/31/2021
Onyama LimbaMujtaba Nicka ArgentinaChemel, James L Cpa NEW05/19/2021
Total Customers:7
Stephen Shaw
Xuxue Feng
Xuxue FengRodrigues Campain FranceCommercial Press UNQUALIFIED06/07/2021
Xuxue FengJones Vocelka SpainBenton, John B Jr NEGOTIATION05/24/2021
Xuxue FengRodrigues Campain FranceBenton, John B Jr NEGOTIATION05/27/2021
Xuxue FengMujtaba Nicka CanadaChemel, James L Cpa UNQUALIFIED06/14/2021
Xuxue FengAshley Doe CanadaPrinting Dimensions QUALIFIED05/24/2021
Xuxue FengJohnson Sergi ItalyDorl, James J Esq UNQUALIFIED06/07/2021
Xuxue FengAditya Kusko AustraliaRousseaux, Michael Esq UNQUALIFIED05/17/2021
Xuxue FengWickens Nestle United KingdomChemel, James L Cpa NEGOTIATION05/26/2021
Total Customers:8
Rowspan
RepresentativeNameCountryCompanyStatusDate
Amy ElsnerOctavia Malet CanadaBenton, John B Jr UNQUALIFIED05/24/2021
Amy ElsnerJulie Stenseth GermanyMorlong Associates QUALIFIED06/03/2021
Amy ElsnerMurillo Malet BrazilDorl, James J Esq RENEWAL06/11/2021
Amy ElsnerJohnson Sergi BrazilBuckley Miller Wright UNQUALIFIED05/26/2021
Amy ElsnerAntonio Caudy ArgentinaChanay, Jeffrey A Esq NEGOTIATION06/03/2021
Amy ElsnerMaria Marrier ArgentinaFeiner Bros RENEWAL05/28/2021
Anna FaliDeepesh Chui ItalyChapman, Ross E Esq NEGOTIATION05/18/2021
Anna FaliAditya Kusko SpainDorl, James J Esq RENEWAL06/05/2021
Asiya JavayantJeanfrancois Venere United KingdomPrinting Dimensions NEGOTIATION05/20/2021
Asiya JavayantJones Vocelka AustraliaKing, Christopher A Esq PROPOSAL05/21/2021
Asiya JavayantJones Vocelka FranceCommercial Press PROPOSAL05/21/2021
Asiya JavayantMorrow Ruta CanadaCommercial Press NEW06/13/2021
Asiya JavayantStacey Maclead AustraliaFeltz Printing Service UNQUALIFIED06/03/2021
Asiya JavayantArvin Albares RussiaChanay, Jeffrey A Esq UNQUALIFIED06/05/2021
Bernardo DominicMayumi Kolmetz GermanyBenton, John B Jr RENEWAL06/03/2021
Bernardo DominicIzzy Garufi FranceCommercial Press UNQUALIFIED05/19/2021
Bernardo DominicCody Saylors RussiaDorl, James J Esq RENEWAL05/20/2021
Bernardo DominicAruna Figeroa RussiaMorlong Associates QUALIFIED05/30/2021
Bernardo DominicAntonio Caudy RussiaBenton, John B Jr RENEWAL06/09/2021
Bernardo DominicIsabel Bowley BrazilKing, Christopher A Esq NEGOTIATION06/14/2021
Bernardo DominicGreenwood Bolognia AustraliaChemel, James L Cpa QUALIFIED06/11/2021
Bernardo DominicAntonio Caudy BrazilRangoni Of Florence PROPOSAL06/09/2021
Elwin SharvillJuan Wieser BrazilFeiner Bros NEW05/28/2021
Elwin SharvillJones Vocelka United KingdomChapman, Ross E Esq UNQUALIFIED05/31/2021
Elwin SharvillClaire Tollner JapanMorlong Associates PROPOSAL05/23/2021
Ioni BowcherRicardo Gaucho ItalyChanay, Jeffrey A Esq NEW06/06/2021
Ioni BowcherJulie Stenseth RussiaFeltz Printing Service QUALIFIED06/13/2021
Ioni BowcherCosta Dilliard RussiaChanay, Jeffrey A Esq QUALIFIED06/09/2021
Ioni BowcherLeon Oldroyd ArgentinaTruhlar And Truhlar Attys RENEWAL06/15/2021
Ivan MagalhaesJames Butt CanadaDorl, James J Esq UNQUALIFIED06/05/2021
Ivan MagalhaesWickens Nestle United KingdomBuckley Miller Wright QUALIFIED05/19/2021
Ivan MagalhaesNicolas Iturbide IndiaChanay, Jeffrey A Esq NEGOTIATION06/03/2021
Onyama LimbaDeepesh Chui JapanPrinting Dimensions UNQUALIFIED05/24/2021
Onyama LimbaClifford Rim CanadaFeiner Bros UNQUALIFIED05/22/2021
Onyama LimbaSinclair Waycott JapanDorl, James J Esq RENEWAL05/18/2021
Onyama LimbaIzzy Garufi GermanyTruhlar And Truhlar Attys NEW05/31/2021
Onyama LimbaStacey Maclead IndiaBenton, John B Jr UNQUALIFIED05/31/2021
Onyama LimbaMurillo Malet GermanyChapman, Ross E Esq UNQUALIFIED05/31/2021
Onyama LimbaMujtaba Nicka ArgentinaChemel, James L Cpa NEW05/19/2021
Stephen ShawJuan Wieser IndiaTruhlar And Truhlar Attys RENEWAL06/09/2021
Stephen ShawChavez Briddick SpainPrinting Dimensions NEW05/27/2021
Stephen ShawFaith Gillian IndiaKing, Christopher A Esq PROPOSAL05/24/2021
Xuxue FengRodrigues Campain FranceCommercial Press UNQUALIFIED06/07/2021
Xuxue FengJones Vocelka SpainBenton, John B Jr NEGOTIATION05/24/2021
Xuxue FengRodrigues Campain FranceBenton, John B Jr NEGOTIATION05/27/2021
Xuxue FengMujtaba Nicka CanadaChemel, James L Cpa UNQUALIFIED06/14/2021
Xuxue FengAshley Doe CanadaPrinting Dimensions QUALIFIED05/24/2021
Xuxue FengJohnson Sergi ItalyDorl, James J Esq UNQUALIFIED06/07/2021
Xuxue FengAditya Kusko AustraliaRousseaux, Michael Esq UNQUALIFIED05/17/2021
Xuxue FengWickens Nestle United KingdomChemel, James L Cpa NEGOTIATION05/26/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>