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 ElsnerJennifer Amigon GermanyPrinting Dimensions RENEWAL08/23/2021
Amy ElsnerMaria Marrier BrazilChanay, Jeffrey A Esq UNQUALIFIED08/22/2021
Amy ElsnerLeja Caldarera AustraliaTruhlar And Truhlar Attys NEW09/16/2021
Amy ElsnerAruna Figeroa CanadaCommercial Press PROPOSAL09/11/2021
Amy ElsnerJefferson Schemmer AustraliaKing, Christopher A Esq UNQUALIFIED08/26/2021
Amy ElsnerLeja Caldarera AustraliaRousseaux, Michael Esq NEGOTIATION08/30/2021
Amy ElsnerFrancesco Shinko AustraliaFeltz Printing Service QUALIFIED08/26/2021
Amy ElsnerMunro Ferencz GermanyDorl, James J Esq RENEWAL08/26/2021
Amy ElsnerMunro Ferencz United KingdomChemel, James L Cpa UNQUALIFIED09/20/2021
Total Customers:9
Anna Fali
Anna FaliClifford Rim United KingdomChanay, Jeffrey A Esq RENEWAL09/12/2021
Anna FaliCosta Dilliard RussiaRousseaux, Michael Esq RENEWAL09/14/2021
Anna FaliAshley Doe CanadaDorl, James J Esq NEW09/19/2021
Total Customers:3
Asiya Javayant
Asiya JavayantIsabel Bowley BrazilCommercial Press RENEWAL08/28/2021
Asiya JavayantAika Inouye ArgentinaFeiner Bros NEGOTIATION08/22/2021
Asiya JavayantCosta Dilliard GermanyKing, Christopher A Esq RENEWAL09/19/2021
Asiya JavayantJeanfrancois Venere FranceRangoni Of Florence NEW09/19/2021
Asiya JavayantJefferson Schemmer United KingdomChemel, James L Cpa NEW08/26/2021
Total Customers:5
Bernardo Dominic
Bernardo DominicJames Butt BrazilFeiner Bros UNQUALIFIED09/07/2021
Bernardo DominicLeon Oldroyd BrazilRangoni Of Florence RENEWAL09/16/2021
Bernardo DominicIvar Paprocki United KingdomFeltz Printing Service RENEWAL08/23/2021
Bernardo DominicJames Butt CanadaChanay, Jeffrey A Esq QUALIFIED09/19/2021
Total Customers:4
Elwin Sharvill
Elwin SharvillJeanfrancois Venere FranceKing, Christopher A Esq NEGOTIATION09/10/2021
Elwin SharvillAntonio Caudy SpainChemel, James L Cpa NEGOTIATION09/04/2021
Elwin SharvillJulie Stenseth United KingdomChemel, James L Cpa PROPOSAL09/13/2021
Elwin SharvillClaire Tollner IndiaDorl, James J Esq UNQUALIFIED09/04/2021
Total Customers:4
Ioni Bowcher
Ioni BowcherClaire Tollner IndiaChanay, Jeffrey A Esq PROPOSAL09/19/2021
Ioni BowcherAditya Kusko CanadaFeiner Bros NEGOTIATION08/24/2021
Ioni BowcherCosta Dilliard FranceDorl, James J Esq NEGOTIATION09/06/2021
Ioni BowcherAditya Kusko SpainPrinting Dimensions QUALIFIED09/02/2021
Ioni BowcherAika Inouye SpainRangoni Of Florence RENEWAL09/13/2021
Ioni BowcherJohnson Sergi AustraliaTruhlar And Truhlar Attys PROPOSAL09/16/2021
Total Customers:6
Ivan Magalhaes
Ivan MagalhaesClaire Tollner ItalyTruhlar And Truhlar Attys UNQUALIFIED09/12/2021
Ivan MagalhaesKaitlin Ostrosky CanadaKing, Christopher A Esq NEGOTIATION09/06/2021
Ivan MagalhaesCody Saylors IndiaDorl, James J Esq UNQUALIFIED09/03/2021
Total Customers:3
Onyama Limba
Onyama LimbaJones Vocelka IndiaPrinting Dimensions QUALIFIED09/15/2021
Onyama LimbaJuan Wieser FranceKing, Christopher A Esq QUALIFIED08/23/2021
Onyama LimbaCosta Dilliard JapanTruhlar And Truhlar Attys NEGOTIATION09/13/2021
Total Customers:3
Stephen Shaw
Xuxue Feng
Xuxue FengGreenwood Bolognia ItalyMorlong Associates NEGOTIATION09/18/2021
Xuxue FengNicolas Iturbide IndiaFeiner Bros QUALIFIED09/15/2021
Xuxue FengKadeem Flosi AustraliaChemel, James L Cpa NEGOTIATION09/12/2021
Xuxue FengJulie Stenseth CanadaChanay, Jeffrey A Esq PROPOSAL09/09/2021
Xuxue FengClifford Rim JapanBuckley Miller Wright NEW09/14/2021
Total Customers:5
Rowspan
RepresentativeNameCountryCompanyStatusDate
Amy ElsnerJennifer Amigon GermanyPrinting Dimensions RENEWAL08/23/2021
Amy ElsnerMaria Marrier BrazilChanay, Jeffrey A Esq UNQUALIFIED08/22/2021
Amy ElsnerLeja Caldarera AustraliaTruhlar And Truhlar Attys NEW09/16/2021
Amy ElsnerAruna Figeroa CanadaCommercial Press PROPOSAL09/11/2021
Amy ElsnerJefferson Schemmer AustraliaKing, Christopher A Esq UNQUALIFIED08/26/2021
Amy ElsnerLeja Caldarera AustraliaRousseaux, Michael Esq NEGOTIATION08/30/2021
Amy ElsnerFrancesco Shinko AustraliaFeltz Printing Service QUALIFIED08/26/2021
Amy ElsnerMunro Ferencz GermanyDorl, James J Esq RENEWAL08/26/2021
Amy ElsnerMunro Ferencz United KingdomChemel, James L Cpa UNQUALIFIED09/20/2021
Anna FaliClifford Rim United KingdomChanay, Jeffrey A Esq RENEWAL09/12/2021
Anna FaliCosta Dilliard RussiaRousseaux, Michael Esq RENEWAL09/14/2021
Anna FaliAshley Doe CanadaDorl, James J Esq NEW09/19/2021
Asiya JavayantIsabel Bowley BrazilCommercial Press RENEWAL08/28/2021
Asiya JavayantAika Inouye ArgentinaFeiner Bros NEGOTIATION08/22/2021
Asiya JavayantCosta Dilliard GermanyKing, Christopher A Esq RENEWAL09/19/2021
Asiya JavayantJeanfrancois Venere FranceRangoni Of Florence NEW09/19/2021
Asiya JavayantJefferson Schemmer United KingdomChemel, James L Cpa NEW08/26/2021
Bernardo DominicJames Butt BrazilFeiner Bros UNQUALIFIED09/07/2021
Bernardo DominicLeon Oldroyd BrazilRangoni Of Florence RENEWAL09/16/2021
Bernardo DominicIvar Paprocki United KingdomFeltz Printing Service RENEWAL08/23/2021
Bernardo DominicJames Butt CanadaChanay, Jeffrey A Esq QUALIFIED09/19/2021
Elwin SharvillJeanfrancois Venere FranceKing, Christopher A Esq NEGOTIATION09/10/2021
Elwin SharvillAntonio Caudy SpainChemel, James L Cpa NEGOTIATION09/04/2021
Elwin SharvillJulie Stenseth United KingdomChemel, James L Cpa PROPOSAL09/13/2021
Elwin SharvillClaire Tollner IndiaDorl, James J Esq UNQUALIFIED09/04/2021
Ioni BowcherClaire Tollner IndiaChanay, Jeffrey A Esq PROPOSAL09/19/2021
Ioni BowcherAditya Kusko CanadaFeiner Bros NEGOTIATION08/24/2021
Ioni BowcherCosta Dilliard FranceDorl, James J Esq NEGOTIATION09/06/2021
Ioni BowcherAditya Kusko SpainPrinting Dimensions QUALIFIED09/02/2021
Ioni BowcherAika Inouye SpainRangoni Of Florence RENEWAL09/13/2021
Ioni BowcherJohnson Sergi AustraliaTruhlar And Truhlar Attys PROPOSAL09/16/2021
Ivan MagalhaesClaire Tollner ItalyTruhlar And Truhlar Attys UNQUALIFIED09/12/2021
Ivan MagalhaesKaitlin Ostrosky CanadaKing, Christopher A Esq NEGOTIATION09/06/2021
Ivan MagalhaesCody Saylors IndiaDorl, James J Esq UNQUALIFIED09/03/2021
Onyama LimbaJones Vocelka IndiaPrinting Dimensions QUALIFIED09/15/2021
Onyama LimbaJuan Wieser FranceKing, Christopher A Esq QUALIFIED08/23/2021
Onyama LimbaCosta Dilliard JapanTruhlar And Truhlar Attys NEGOTIATION09/13/2021
Stephen ShawDarci Poquette United KingdomPrinting Dimensions QUALIFIED09/20/2021
Stephen ShawJames Butt BrazilChemel, James L Cpa UNQUALIFIED08/27/2021
Stephen ShawJuan Wieser RussiaKing, Christopher A Esq NEW09/14/2021
Stephen ShawClifford Rim SpainKing, Christopher A Esq RENEWAL09/13/2021
Stephen ShawKaitlin Ostrosky JapanFeltz Printing Service PROPOSAL08/28/2021
Stephen ShawMaisha Rulapaugh SpainDorl, James J Esq PROPOSAL09/02/2021
Stephen ShawIzzy Garufi IndiaMorlong Associates PROPOSAL09/15/2021
Stephen ShawLeon Oldroyd ItalyCommercial Press PROPOSAL08/29/2021
Xuxue FengGreenwood Bolognia ItalyMorlong Associates NEGOTIATION09/18/2021
Xuxue FengNicolas Iturbide IndiaFeiner Bros QUALIFIED09/15/2021
Xuxue FengKadeem Flosi AustraliaChemel, James L Cpa NEGOTIATION09/12/2021
Xuxue FengJulie Stenseth CanadaChanay, Jeffrey A Esq PROPOSAL09/09/2021
Xuxue FengClifford Rim JapanBuckley Miller Wright NEW09/14/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>