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 ElsnerIvar Paprocki SpainBenton, John B Jr RENEWAL02/17/2021
Amy ElsnerJulie Stenseth ArgentinaFeltz Printing Service NEGOTIATION02/03/2021
Amy ElsnerFaith Gillian FrancePrinting Dimensions NEGOTIATION02/08/2021
Amy ElsnerMisaki Royster CanadaKing, Christopher A Esq NEW02/13/2021
Amy ElsnerJennifer Amigon ItalyBuckley Miller Wright RENEWAL02/03/2021
Amy ElsnerMunro Ferencz ArgentinaChanay, Jeffrey A Esq QUALIFIED03/01/2021
Amy ElsnerIsabel Bowley United KingdomPrinting Dimensions PROPOSAL02/08/2021
Amy ElsnerWickens Nestle AustraliaMorlong Associates NEW02/24/2021
Amy ElsnerLeon Oldroyd ArgentinaDorl, James J Esq NEW03/03/2021
Total Customers:9
Anna Fali
Anna FaliCosta Dilliard BrazilRousseaux, Michael Esq UNQUALIFIED02/23/2021
Anna FaliJohnson Sergi ArgentinaChanay, Jeffrey A Esq RENEWAL02/11/2021
Anna FaliKadeem Flosi SpainFeiner Bros QUALIFIED02/05/2021
Anna FaliLeon Oldroyd JapanKing, Christopher A Esq NEGOTIATION02/05/2021
Anna FaliSinclair Waycott United KingdomFeltz Printing Service RENEWAL02/06/2021
Total Customers:5
Asiya Javayant
Asiya JavayantAdams Morasca FranceKing, Christopher A Esq NEW02/05/2021
Asiya JavayantDarci Poquette ItalyChapman, Ross E Esq RENEWAL02/19/2021
Total Customers:2
Bernardo Dominic
Bernardo DominicMisaki Royster CanadaChapman, Ross E Esq NEGOTIATION02/28/2021
Bernardo DominicClaire Tollner United KingdomKing, Christopher A Esq PROPOSAL02/17/2021
Bernardo DominicCosta Dilliard RussiaChemel, James L Cpa NEW02/06/2021
Bernardo DominicJuan Wieser BrazilDorl, James J Esq QUALIFIED02/27/2021
Bernardo DominicLeon Oldroyd IndiaPrinting Dimensions NEW03/03/2021
Total Customers:5
Elwin Sharvill
Elwin SharvillOctavia Malet SpainChanay, Jeffrey A Esq NEW02/13/2021
Elwin SharvillJuan Wieser ItalyFeltz Printing Service QUALIFIED02/10/2021
Elwin SharvillOctavia Malet FranceRangoni Of Florence UNQUALIFIED02/20/2021
Elwin SharvillClaire Tollner SpainBenton, John B Jr PROPOSAL03/02/2021
Elwin SharvillAditya Kusko United KingdomChanay, Jeffrey A Esq NEGOTIATION02/12/2021
Total Customers:5
Ioni Bowcher
Ioni BowcherArvin Albares RussiaBuckley Miller Wright UNQUALIFIED02/25/2021
Ioni BowcherJefferson Schemmer SpainFeltz Printing Service QUALIFIED02/21/2021
Ioni BowcherFrancesco Shinko IndiaDorl, James J Esq QUALIFIED02/13/2021
Total Customers:3
Ivan Magalhaes
Ivan MagalhaesRicardo Gaucho IndiaTruhlar And Truhlar Attys QUALIFIED02/18/2021
Ivan MagalhaesDeepesh Chui BrazilBuckley Miller Wright NEW02/17/2021
Ivan MagalhaesJuan Wieser IndiaRousseaux, Michael Esq PROPOSAL02/21/2021
Ivan MagalhaesChavez Briddick United KingdomFeiner Bros NEW02/12/2021
Ivan MagalhaesJuan Wieser SpainDorl, James J Esq PROPOSAL02/26/2021
Ivan MagalhaesArvin Albares JapanRousseaux, Michael Esq UNQUALIFIED02/11/2021
Ivan MagalhaesMaisha Rulapaugh RussiaTruhlar And Truhlar Attys QUALIFIED02/06/2021
Ivan MagalhaesAntonio Caudy CanadaRangoni Of Florence NEGOTIATION02/20/2021
Total Customers:8
Onyama Limba
Onyama LimbaLeon Oldroyd ArgentinaKing, Christopher A Esq UNQUALIFIED02/20/2021
Onyama LimbaAshley Doe RussiaMorlong Associates UNQUALIFIED02/13/2021
Onyama LimbaMunro Ferencz IndiaTruhlar And Truhlar Attys RENEWAL02/12/2021
Onyama LimbaFrancesco Shinko ItalyMorlong Associates NEW02/28/2021
Total Customers:4
Stephen Shaw
Xuxue Feng
Xuxue FengJuan Wieser FranceFeiner Bros PROPOSAL02/12/2021
Xuxue FengAlejandro Perin ItalyChapman, Ross E Esq NEGOTIATION02/17/2021
Xuxue FengOctavia Malet ArgentinaMorlong Associates PROPOSAL02/21/2021
Xuxue FengCosta Dilliard SpainTruhlar And Truhlar Attys UNQUALIFIED03/04/2021
Total Customers:4
Rowspan
RepresentativeNameCountryCompanyStatusDate
Amy ElsnerIvar Paprocki SpainBenton, John B Jr RENEWAL02/17/2021
Amy ElsnerJulie Stenseth ArgentinaFeltz Printing Service NEGOTIATION02/03/2021
Amy ElsnerFaith Gillian FrancePrinting Dimensions NEGOTIATION02/08/2021
Amy ElsnerMisaki Royster CanadaKing, Christopher A Esq NEW02/13/2021
Amy ElsnerJennifer Amigon ItalyBuckley Miller Wright RENEWAL02/03/2021
Amy ElsnerMunro Ferencz ArgentinaChanay, Jeffrey A Esq QUALIFIED03/01/2021
Amy ElsnerIsabel Bowley United KingdomPrinting Dimensions PROPOSAL02/08/2021
Amy ElsnerWickens Nestle AustraliaMorlong Associates NEW02/24/2021
Amy ElsnerLeon Oldroyd ArgentinaDorl, James J Esq NEW03/03/2021
Anna FaliCosta Dilliard BrazilRousseaux, Michael Esq UNQUALIFIED02/23/2021
Anna FaliJohnson Sergi ArgentinaChanay, Jeffrey A Esq RENEWAL02/11/2021
Anna FaliKadeem Flosi SpainFeiner Bros QUALIFIED02/05/2021
Anna FaliLeon Oldroyd JapanKing, Christopher A Esq NEGOTIATION02/05/2021
Anna FaliSinclair Waycott United KingdomFeltz Printing Service RENEWAL02/06/2021
Asiya JavayantAdams Morasca FranceKing, Christopher A Esq NEW02/05/2021
Asiya JavayantDarci Poquette ItalyChapman, Ross E Esq RENEWAL02/19/2021
Bernardo DominicMisaki Royster CanadaChapman, Ross E Esq NEGOTIATION02/28/2021
Bernardo DominicClaire Tollner United KingdomKing, Christopher A Esq PROPOSAL02/17/2021
Bernardo DominicCosta Dilliard RussiaChemel, James L Cpa NEW02/06/2021
Bernardo DominicJuan Wieser BrazilDorl, James J Esq QUALIFIED02/27/2021
Bernardo DominicLeon Oldroyd IndiaPrinting Dimensions NEW03/03/2021
Elwin SharvillOctavia Malet SpainChanay, Jeffrey A Esq NEW02/13/2021
Elwin SharvillJuan Wieser ItalyFeltz Printing Service QUALIFIED02/10/2021
Elwin SharvillOctavia Malet FranceRangoni Of Florence UNQUALIFIED02/20/2021
Elwin SharvillClaire Tollner SpainBenton, John B Jr PROPOSAL03/02/2021
Elwin SharvillAditya Kusko United KingdomChanay, Jeffrey A Esq NEGOTIATION02/12/2021
Ioni BowcherArvin Albares RussiaBuckley Miller Wright UNQUALIFIED02/25/2021
Ioni BowcherJefferson Schemmer SpainFeltz Printing Service QUALIFIED02/21/2021
Ioni BowcherFrancesco Shinko IndiaDorl, James J Esq QUALIFIED02/13/2021
Ivan MagalhaesRicardo Gaucho IndiaTruhlar And Truhlar Attys QUALIFIED02/18/2021
Ivan MagalhaesDeepesh Chui BrazilBuckley Miller Wright NEW02/17/2021
Ivan MagalhaesJuan Wieser IndiaRousseaux, Michael Esq PROPOSAL02/21/2021
Ivan MagalhaesChavez Briddick United KingdomFeiner Bros NEW02/12/2021
Ivan MagalhaesJuan Wieser SpainDorl, James J Esq PROPOSAL02/26/2021
Ivan MagalhaesArvin Albares JapanRousseaux, Michael Esq UNQUALIFIED02/11/2021
Ivan MagalhaesMaisha Rulapaugh RussiaTruhlar And Truhlar Attys QUALIFIED02/06/2021
Ivan MagalhaesAntonio Caudy CanadaRangoni Of Florence NEGOTIATION02/20/2021
Onyama LimbaLeon Oldroyd ArgentinaKing, Christopher A Esq UNQUALIFIED02/20/2021
Onyama LimbaAshley Doe RussiaMorlong Associates UNQUALIFIED02/13/2021
Onyama LimbaMunro Ferencz IndiaTruhlar And Truhlar Attys RENEWAL02/12/2021
Onyama LimbaFrancesco Shinko ItalyMorlong Associates NEW02/28/2021
Stephen ShawJennifer Amigon United KingdomBuckley Miller Wright PROPOSAL02/04/2021
Stephen ShawIsabel Bowley FrancePrinting Dimensions NEW02/12/2021
Stephen ShawEmily Whobrey IndiaChemel, James L Cpa UNQUALIFIED02/10/2021
Stephen ShawJames Butt IndiaChemel, James L Cpa UNQUALIFIED03/04/2021
Stephen ShawCody Saylors ArgentinaRangoni Of Florence NEW02/17/2021
Xuxue FengJuan Wieser FranceFeiner Bros PROPOSAL02/12/2021
Xuxue FengAlejandro Perin ItalyChapman, Ross E Esq NEGOTIATION02/17/2021
Xuxue FengOctavia Malet ArgentinaMorlong Associates PROPOSAL02/21/2021
Xuxue FengCosta Dilliard SpainTruhlar And Truhlar Attys UNQUALIFIED03/04/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>