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 ElsnerMujtaba Nicka FranceMorlong Associates UNQUALIFIED02/10/2021
Amy ElsnerNicolas Iturbide GermanyPrinting Dimensions RENEWAL02/17/2021
Amy ElsnerLeon Oldroyd SpainBenton, John B Jr PROPOSAL03/01/2021
Amy ElsnerAntonio Caudy AustraliaFeltz Printing Service UNQUALIFIED02/10/2021
Amy ElsnerMayumi Kolmetz United KingdomFeltz Printing Service UNQUALIFIED03/05/2021
Total Customers:5
Anna Fali
Anna FaliMayumi Kolmetz CanadaPrinting Dimensions UNQUALIFIED02/22/2021
Anna FaliSilvio Slusarski RussiaCommercial Press NEGOTIATION03/02/2021
Anna FaliSilvio Slusarski ItalyRangoni Of Florence NEGOTIATION02/07/2021
Anna FaliClaire Tollner FranceMorlong Associates NEW02/18/2021
Total Customers:4
Asiya Javayant
Asiya JavayantMujtaba Nicka ItalyTruhlar And Truhlar Attys QUALIFIED03/06/2021
Asiya JavayantSinclair Waycott AustraliaKing, Christopher A Esq NEGOTIATION03/03/2021
Asiya JavayantNicolas Iturbide CanadaFeltz Printing Service QUALIFIED02/08/2021
Total Customers:3
Bernardo Dominic
Bernardo DominicDarci Poquette FranceMorlong Associates PROPOSAL03/03/2021
Bernardo DominicAika Inouye CanadaCommercial Press UNQUALIFIED02/21/2021
Bernardo DominicMujtaba Nicka RussiaBenton, John B Jr RENEWAL02/18/2021
Bernardo DominicAntonio Caudy JapanFeltz Printing Service QUALIFIED02/15/2021
Bernardo DominicMisaki Royster IndiaPrinting Dimensions RENEWAL02/25/2021
Bernardo DominicStacey Maclead AustraliaFeltz Printing Service PROPOSAL03/06/2021
Bernardo DominicOctavia Malet IndiaChapman, Ross E Esq NEW02/18/2021
Bernardo DominicOctavia Malet AustraliaBenton, John B Jr QUALIFIED03/03/2021
Total Customers:8
Elwin Sharvill
Elwin SharvillOctavia Malet CanadaPrinting Dimensions PROPOSAL02/18/2021
Elwin SharvillAdams Morasca BrazilTruhlar And Truhlar Attys NEW02/24/2021
Elwin SharvillRodrigues Campain CanadaBuckley Miller Wright RENEWAL02/18/2021
Elwin SharvillIzzy Garufi CanadaKing, Christopher A Esq QUALIFIED03/02/2021
Elwin SharvillLeja Caldarera JapanChapman, Ross E Esq QUALIFIED02/18/2021
Elwin SharvillChavez Briddick BrazilFeltz Printing Service RENEWAL03/02/2021
Elwin SharvillRicardo Gaucho CanadaChemel, James L Cpa PROPOSAL02/18/2021
Elwin SharvillMisaki Royster CanadaTruhlar And Truhlar Attys NEGOTIATION02/06/2021
Elwin SharvillAdams Morasca AustraliaCommercial Press UNQUALIFIED02/25/2021
Total Customers:9
Ioni Bowcher
Ioni BowcherIsabel Bowley CanadaChemel, James L Cpa UNQUALIFIED03/06/2021
Total Customers:1
Ivan Magalhaes
Ivan MagalhaesAditya Kusko AustraliaBenton, John B Jr NEGOTIATION02/19/2021
Ivan MagalhaesEmily Whobrey GermanyCommercial Press RENEWAL02/25/2021
Ivan MagalhaesIvar Paprocki GermanyMorlong Associates UNQUALIFIED02/13/2021
Total Customers:3
Onyama Limba
Onyama LimbaJames Butt JapanFeiner Bros QUALIFIED02/24/2021
Onyama LimbaRodrigues Campain ItalyRangoni Of Florence UNQUALIFIED02/15/2021
Onyama LimbaMurillo Malet RussiaBenton, John B Jr UNQUALIFIED02/28/2021
Onyama LimbaFaith Gillian ArgentinaRousseaux, Michael Esq QUALIFIED02/24/2021
Total Customers:4
Stephen Shaw
Xuxue Feng
Xuxue FengAika Inouye AustraliaChemel, James L Cpa QUALIFIED02/08/2021
Xuxue FengSilvio Slusarski ItalyPrinting Dimensions QUALIFIED02/14/2021
Xuxue FengDeepesh Chui ArgentinaTruhlar And Truhlar Attys NEW02/08/2021
Xuxue FengJefferson Schemmer CanadaFeiner Bros NEW02/15/2021
Xuxue FengDavid Darakjy RussiaCommercial Press NEGOTIATION03/03/2021
Xuxue FengKaitlin Ostrosky ArgentinaFeiner Bros NEW02/23/2021
Total Customers:6
Rowspan
RepresentativeNameCountryCompanyStatusDate
Amy ElsnerMujtaba Nicka FranceMorlong Associates UNQUALIFIED02/10/2021
Amy ElsnerNicolas Iturbide GermanyPrinting Dimensions RENEWAL02/17/2021
Amy ElsnerLeon Oldroyd SpainBenton, John B Jr PROPOSAL03/01/2021
Amy ElsnerAntonio Caudy AustraliaFeltz Printing Service UNQUALIFIED02/10/2021
Amy ElsnerMayumi Kolmetz United KingdomFeltz Printing Service UNQUALIFIED03/05/2021
Anna FaliMayumi Kolmetz CanadaPrinting Dimensions UNQUALIFIED02/22/2021
Anna FaliSilvio Slusarski RussiaCommercial Press NEGOTIATION03/02/2021
Anna FaliSilvio Slusarski ItalyRangoni Of Florence NEGOTIATION02/07/2021
Anna FaliClaire Tollner FranceMorlong Associates NEW02/18/2021
Asiya JavayantMujtaba Nicka ItalyTruhlar And Truhlar Attys QUALIFIED03/06/2021
Asiya JavayantSinclair Waycott AustraliaKing, Christopher A Esq NEGOTIATION03/03/2021
Asiya JavayantNicolas Iturbide CanadaFeltz Printing Service QUALIFIED02/08/2021
Bernardo DominicDarci Poquette FranceMorlong Associates PROPOSAL03/03/2021
Bernardo DominicAika Inouye CanadaCommercial Press UNQUALIFIED02/21/2021
Bernardo DominicMujtaba Nicka RussiaBenton, John B Jr RENEWAL02/18/2021
Bernardo DominicAntonio Caudy JapanFeltz Printing Service QUALIFIED02/15/2021
Bernardo DominicMisaki Royster IndiaPrinting Dimensions RENEWAL02/25/2021
Bernardo DominicStacey Maclead AustraliaFeltz Printing Service PROPOSAL03/06/2021
Bernardo DominicOctavia Malet IndiaChapman, Ross E Esq NEW02/18/2021
Bernardo DominicOctavia Malet AustraliaBenton, John B Jr QUALIFIED03/03/2021
Elwin SharvillOctavia Malet CanadaPrinting Dimensions PROPOSAL02/18/2021
Elwin SharvillAdams Morasca BrazilTruhlar And Truhlar Attys NEW02/24/2021
Elwin SharvillRodrigues Campain CanadaBuckley Miller Wright RENEWAL02/18/2021
Elwin SharvillIzzy Garufi CanadaKing, Christopher A Esq QUALIFIED03/02/2021
Elwin SharvillLeja Caldarera JapanChapman, Ross E Esq QUALIFIED02/18/2021
Elwin SharvillChavez Briddick BrazilFeltz Printing Service RENEWAL03/02/2021
Elwin SharvillRicardo Gaucho CanadaChemel, James L Cpa PROPOSAL02/18/2021
Elwin SharvillMisaki Royster CanadaTruhlar And Truhlar Attys NEGOTIATION02/06/2021
Elwin SharvillAdams Morasca AustraliaCommercial Press UNQUALIFIED02/25/2021
Ioni BowcherIsabel Bowley CanadaChemel, James L Cpa UNQUALIFIED03/06/2021
Ivan MagalhaesAditya Kusko AustraliaBenton, John B Jr NEGOTIATION02/19/2021
Ivan MagalhaesEmily Whobrey GermanyCommercial Press RENEWAL02/25/2021
Ivan MagalhaesIvar Paprocki GermanyMorlong Associates UNQUALIFIED02/13/2021
Onyama LimbaJames Butt JapanFeiner Bros QUALIFIED02/24/2021
Onyama LimbaRodrigues Campain ItalyRangoni Of Florence UNQUALIFIED02/15/2021
Onyama LimbaMurillo Malet RussiaBenton, John B Jr UNQUALIFIED02/28/2021
Onyama LimbaFaith Gillian ArgentinaRousseaux, Michael Esq QUALIFIED02/24/2021
Stephen ShawJohnson Sergi SpainPrinting Dimensions QUALIFIED02/24/2021
Stephen ShawMujtaba Nicka ItalyRangoni Of Florence UNQUALIFIED03/01/2021
Stephen ShawLeon Oldroyd ItalyKing, Christopher A Esq NEGOTIATION02/22/2021
Stephen ShawSinclair Waycott United KingdomDorl, James J Esq QUALIFIED02/15/2021
Stephen ShawMorrow Ruta ItalyChemel, James L Cpa PROPOSAL02/17/2021
Stephen ShawMunro Ferencz ArgentinaBuckley Miller Wright NEGOTIATION03/03/2021
Stephen ShawClifford Rim IndiaPrinting Dimensions QUALIFIED02/20/2021
Xuxue FengAika Inouye AustraliaChemel, James L Cpa QUALIFIED02/08/2021
Xuxue FengSilvio Slusarski ItalyPrinting Dimensions QUALIFIED02/14/2021
Xuxue FengDeepesh Chui ArgentinaTruhlar And Truhlar Attys NEW02/08/2021
Xuxue FengJefferson Schemmer CanadaFeiner Bros NEW02/15/2021
Xuxue FengDavid Darakjy RussiaCommercial Press NEGOTIATION03/03/2021
Xuxue FengKaitlin Ostrosky ArgentinaFeiner Bros NEW02/23/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>