Locale

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

Language
English
English
English
French
German
German
German
Italian
Korean
Spanish
Catalan
Dutch
Portuguese
Portuguese
Arabic
Arabic
Bulgarian
Czech
Greek
Persian
Finnish
Danish
Hindi
Indonesian
Croatian
Japanese
Hungarian
Hebrew
Georgian
Central Kurdish
Khmer
Kyrgyz
Kazakh
Lithuanian
Latvian
Malay
Norwegian
Polish
Romanian
Russian
Slovak
Slovenian
Serbian
Serbian
Swedish
Thai
Turkish
Ukrainian
Vietnamese
Chinese
Chinese

Input Style

Themes

PrimeOne
Saga Saga
Vela Vela
Arya Arya
Bootstrap
bootstrap4-blue-light Bootstrap Blue
bootstrap4-purple-light Bootstrap Purple
bootstrap4-blue-dark Bootstrap Blue
bootstrap4-purple-dark Bootstrap Purple
Material Design
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple
Material Design Compact
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple

DataTable Scroll

Both vertical and horizontal scrolling of the data is supported with optional frozen rows-columns and on-demand loading features.

Vertical
NameCountryRepresentativeStatus
Juan W BriddickFranceOnyama Limba NEW
Leon V CampainFranceAnna Fali NEGOTIATION
Ricardo C AmigonArgentinaBernardo Dominic PROPOSAL
Chavez Z VocelkaBrazilAsiya Javayant UNQUALIFIED
Darci J InouyeBrazilAmy Elsner UNQUALIFIED
Misaki I RoysterCanadaAnna Fali UNQUALIFIED
Darci E SergiCanadaElwin Sharvill QUALIFIED
Mujtaba G GarufiJapanBernardo Dominic PROPOSAL
Aruna A PerinIndiaElwin Sharvill RENEWAL
Claire A InouyeRussiaIvan Magalhaes QUALIFIED
Aditya K DoeGermanyAsiya Javayant QUALIFIED
Darci N FlosiBrazilStephen Shaw UNQUALIFIED
Faith N BologniaUnited KingdomAnna Fali NEW
Arvin W BriddickCanadaAsiya Javayant PROPOSAL
Francesco Y RoysterFranceStephen Shaw PROPOSAL
Silvio O ButtGermanyAsiya Javayant NEGOTIATION
Kaitlin X RulapaughFranceOnyama Limba NEGOTIATION
Salvatore K WieserArgentinaXuxue Feng RENEWAL
Smith Q VenereAustraliaStephen Shaw NEGOTIATION
Darci A FlosiAustraliaXuxue Feng RENEWAL
Munro Y MarrierJapanIoni Bowcher RENEWAL
Munro S WhobreyRussiaIvan Magalhaes NEGOTIATION
Mujtaba B MaletArgentinaOnyama Limba RENEWAL
Chavez S BowleySpainBernardo Dominic UNQUALIFIED
Faith P FerenczRussiaXuxue Feng NEGOTIATION
Chavez E RutaArgentinaAmy Elsner UNQUALIFIED
Leon K OstroskyUnited KingdomIoni Bowcher QUALIFIED
Ashley T BologniaSpainBernardo Dominic NEW
Mujtaba X NestleAustraliaAsiya Javayant NEGOTIATION
Jones N MaletAustraliaIoni Bowcher RENEWAL
Cody U GlickAustraliaBernardo Dominic PROPOSAL
Aditya A NickaItalyStephen Shaw NEGOTIATION
Mayumi X FigeroaAustraliaElwin Sharvill NEW
Juan B KuskoGermanyIvan Magalhaes UNQUALIFIED
Sinclair R PerinFranceAnna Fali NEGOTIATION
Kadeem B FerenczSpainAnna Fali UNQUALIFIED
Nicolas U FerenczAustraliaXuxue Feng UNQUALIFIED
Claire G GlickArgentinaElwin Sharvill UNQUALIFIED
Tony Y FollerJapanElwin Sharvill RENEWAL
Wickens E RutaFranceBernardo Dominic NEGOTIATION
Nicolas G RimBrazilBernardo Dominic NEGOTIATION
Deepesh A PaprockiBrazilAmy Elsner PROPOSAL
Greenwood J WieserBrazilAnna Fali PROPOSAL
Kaitlin M FigeroaJapanOnyama Limba UNQUALIFIED
Aditya Q MarrierCanadaIvan Magalhaes NEGOTIATION
Nicolas C MaletGermanyOnyama Limba PROPOSAL
Johnson N PerinJapanIoni Bowcher PROPOSAL
Aditya T IturbideJapanAsiya Javayant RENEWAL
Stacey K DarakjyUnited KingdomBernardo Dominic UNQUALIFIED
Wickens U GauchoIndiaBernardo Dominic NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Arvin M MaletCanadaElwin Sharvill UNQUALIFIED
Julie F RimItalyElwin Sharvill RENEWAL
Adams Z CaudyItalyStephen Shaw UNQUALIFIED
Nicolas E ChuiCanadaAnna Fali NEW
Mujtaba V VocelkaAustraliaIvan Magalhaes NEW
Juan W StockhamJapanIvan Magalhaes NEGOTIATION
Sinclair L BowleyAustraliaAmy Elsner QUALIFIED
Leon N IturbideSpainOnyama Limba RENEWAL
Morrow L WieserSpainAnna Fali NEGOTIATION
Ivar L MacleadJapanXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha R RimGermany2024-06-15Commercial Press UNQUALIFIED89Anna Fali
1001Leon M GillianBrazil2024-05-31Buckley Miller Wright QUALIFIED6Ivan Magalhaes
1002Antonio L GarufiSpain2024-05-29King, Christopher A Esq NEGOTIATION40Ivan Magalhaes
1003Misaki S FigeroaRussia2024-06-18King, Christopher A Esq UNQUALIFIED54Bernardo Dominic
1004Antonio Q DoeFrance2024-05-21Chemel, James L Cpa NEW26Amy Elsner
1005Jefferson I ShinkoCanada2024-06-07Rangoni Of Florence NEGOTIATION86Asiya Javayant
1006Izzy C AmigonAustralia2024-05-27Rangoni Of Florence NEW97Bernardo Dominic
1007Munro R InouyeRussia2024-06-05Benton, John B Jr RENEWAL54Stephen Shaw
1008Johnson K WaycottJapan2024-05-22Feiner Bros UNQUALIFIED1Amy Elsner
1009Maria B PoquetteUnited Kingdom2024-06-05Printing Dimensions NEGOTIATION60Elwin Sharvill
1010Cody C GarufiJapan2024-05-27Rousseaux, Michael Esq NEGOTIATION22Onyama Limba
1011Murillo M StockhamBrazil2024-06-07Chanay, Jeffrey A Esq RENEWAL54Anna Fali
1012Julie G CampainIndia2024-05-21Morlong Associates QUALIFIED38Ioni Bowcher
1013Alejandro R WaycottRussia2024-05-30Dorl, James J Esq NEW36Onyama Limba
1014Mujtaba R StensethFrance2024-05-26Chanay, Jeffrey A Esq RENEWAL98Onyama Limba
1015Salvatore E SchemmerCanada2024-05-23Dorl, James J Esq NEW61Anna Fali
1016Jefferson J RimCanada2024-06-02Chemel, James L Cpa QUALIFIED96Amy Elsner
1017Emily C DoeGermany2024-05-28Rousseaux, Michael Esq NEW3Asiya Javayant
1018Leon A KuskoArgentina2024-05-26Chemel, James L Cpa QUALIFIED20Ioni Bowcher
1019Chavez N SergiUnited Kingdom2024-06-18Commercial Press RENEWAL26Ioni Bowcher
1020Kaitlin Y InouyeFrance2024-06-03King, Christopher A Esq NEGOTIATION73Amy Elsner
1021Silvio H MorascaJapan2024-05-23Rangoni Of Florence NEGOTIATION91Bernardo Dominic
1022Morrow J RimUnited Kingdom2024-05-31Commercial Press NEW10Asiya Javayant
1023Chavez P WieserAustralia2024-05-20Dorl, James J Esq NEGOTIATION7Ivan Magalhaes
1024Cody E DilliardItaly2024-05-20Dorl, James J Esq UNQUALIFIED50Anna Fali
1025Ivar D NestleBrazil2024-05-31Morlong Associates NEW50Xuxue Feng
1026Morrow E MacleadGermany2024-06-15Commercial Press QUALIFIED12Xuxue Feng
1027Wickens T PaprockiBrazil2024-05-21Dorl, James J Esq PROPOSAL59Bernardo Dominic
1028Rodrigues I BologniaJapan2024-05-23Feltz Printing Service PROPOSAL19Ioni Bowcher
1029Isabel S SlusarskiAustralia2024-05-25Buckley Miller Wright NEW78Ivan Magalhaes
1030Murillo I FerenczAustralia2024-06-18King, Christopher A Esq RENEWAL62Onyama Limba
1031Darci O DarakjyJapan2024-06-16Chanay, Jeffrey A Esq QUALIFIED22Onyama Limba
1032Maria T DoeAustralia2024-06-04Rousseaux, Michael Esq NEW31Onyama Limba
1033Kaitlin G PaprockiJapan2024-06-10Printing Dimensions PROPOSAL85Amy Elsner
1034Tony J SchemmerJapan2024-05-26Feiner Bros RENEWAL0Onyama Limba
1035Smith P NestleGermany2024-05-20Benton, John B Jr PROPOSAL45Bernardo Dominic
1036Ricardo D DoeBrazil2024-06-16Rousseaux, Michael Esq QUALIFIED46Onyama Limba
1037Ivar Y TollnerCanada2024-05-25Rousseaux, Michael Esq NEGOTIATION98Onyama Limba
1038Leja F OstroskyArgentina2024-06-02Buckley Miller Wright UNQUALIFIED46Anna Fali
1039Kaitlin X TollnerCanada2024-06-01Printing Dimensions NEW48Ioni Bowcher
1040Ricardo Y FollerCanada2024-06-03Dorl, James J Esq QUALIFIED59Elwin Sharvill
1041Morrow G MorascaRussia2024-05-25Dorl, James J Esq NEGOTIATION23Onyama Limba
1042Maisha V FigeroaItaly2024-05-26Chemel, James L Cpa PROPOSAL35Bernardo Dominic
1043Smith O KuskoCanada2024-05-28Buckley Miller Wright NEGOTIATION28Ioni Bowcher
1044Arvin P ChuiBrazil2024-06-09Buckley Miller Wright NEGOTIATION90Ioni Bowcher
1045Clifford I WhobreyJapan2024-05-22Benton, John B Jr NEGOTIATION42Stephen Shaw
1046Maisha T StockhamFrance2024-06-05Morlong Associates RENEWAL71Stephen Shaw
1047Mayumi H RoysterFrance2024-06-06Chemel, James L Cpa QUALIFIED17Elwin Sharvill
1048Octavia G PoquetteFrance2024-06-07Dorl, James J Esq QUALIFIED40Ioni Bowcher
1049Sinclair I StockhamItaly2024-06-08Feiner Bros UNQUALIFIED90Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Maria N GillianBrazilBernardo Dominic NEGOTIATION
Kadeem N CaldareraItalyIvan Magalhaes QUALIFIED
Maisha O WieserFranceOnyama Limba NEGOTIATION
Aditya X GauchoUnited KingdomXuxue Feng RENEWAL
Clifford U MacleadIndiaStephen Shaw NEGOTIATION
Izzy H SaylorsFranceBernardo Dominic NEW
Faith S PerinJapanElwin Sharvill PROPOSAL
Adams F RoysterArgentinaXuxue Feng RENEWAL
Silvio M DilliardFranceXuxue Feng RENEWAL
Alejandro T AlbaresIndiaOnyama Limba RENEWAL
Maria E CampainArgentinaAsiya Javayant NEGOTIATION
Kaitlin A RutaAustraliaAnna Fali RENEWAL
Faith B VocelkaJapanStephen Shaw NEW
Isabel F RimJapanXuxue Feng QUALIFIED
Johnson L WhobreyFranceIvan Magalhaes UNQUALIFIED
Darci G DilliardRussiaIoni Bowcher NEGOTIATION
Morrow Q BowleyFranceAnna Fali QUALIFIED
Darci B MaletIndiaXuxue Feng UNQUALIFIED
Maisha S FlosiUnited KingdomElwin Sharvill NEW
Aruna D StockhamSpainOnyama Limba QUALIFIED
Jefferson N BowleyBrazilIoni Bowcher PROPOSAL
Mujtaba Z SchemmerJapanAnna Fali UNQUALIFIED
Chavez X FlosiItalyStephen Shaw QUALIFIED
Emily N MaletIndiaBernardo Dominic NEW
Johnson V DilliardIndiaOnyama Limba NEGOTIATION
Sinclair N SlusarskiAustraliaBernardo Dominic NEGOTIATION
Aruna E GillianBrazilOnyama Limba QUALIFIED
Mayumi H MorascaIndiaElwin Sharvill RENEWAL
Stacey E MaletFranceBernardo Dominic NEW
Jones A DoeItalyStephen Shaw UNQUALIFIED
Rodrigues M StockhamFranceAnna Fali PROPOSAL
Leon H CaldareraArgentinaIvan Magalhaes UNQUALIFIED
Morrow Y DilliardFranceAnna Fali NEW
Leja H CaudyFranceBernardo Dominic RENEWAL
Leon R MaletIndiaOnyama Limba UNQUALIFIED
Salvatore K WhobreyBrazilIvan Magalhaes RENEWAL
Munro L NickaItalyAsiya Javayant NEW
Aika L GarufiCanadaOnyama Limba NEW
Emily K RulapaughFranceElwin Sharvill NEW
Maria G MaletRussiaElwin Sharvill UNQUALIFIED
Maria I RimJapanAmy Elsner RENEWAL
Jeanfrancois P FigeroaArgentinaAmy Elsner QUALIFIED
David M InouyeArgentinaOnyama Limba UNQUALIFIED
Stacey P BriddickCanadaOnyama Limba UNQUALIFIED
Clifford M PoquetteIndiaElwin Sharvill QUALIFIED
Tony V MaletGermanyOnyama Limba PROPOSAL
Maria U CampainItalyBernardo Dominic QUALIFIED
Julie R DoeSpainIvan Magalhaes UNQUALIFIED
Chavez D WieserCanadaIoni Bowcher UNQUALIFIED
Juan F KolmetzRussiaIoni Bowcher PROPOSAL
Frozen Columns
Name
Salvatore T Caldarera
Ashley M Maclead
Izzy O Figeroa
Kaitlin E Kusko
Costa T Perin
Cody M Dilliard
Francesco X Ostrosky
Greenwood J Morasca
Chavez N Malet
Adams Q Slusarski
Murillo D Campain
Ashley T Figeroa
Johnson U Stenseth
Leon O Malet
Kaitlin O Caldarera
Octavia A Whobrey
Misaki R Royster
Octavia L Malet
Kadeem O Schemmer
Isabel C Caudy
Emily K Whobrey
Kadeem S Doe
Munro D Bolognia
Darci C Stenseth
David A Wieser
Julie F Rim
Faith P Marrier
Greenwood P Shinko
Wickens O Figeroa
Izzy A Saylors
Ivar K Slusarski
Aruna W Rulapaugh
Sinclair K Nestle
Jeanfrancois L Bowley
Jefferson L Bolognia
Maria Z Gillian
Silvio Q Doe
Francesco A Dilliard
David H Figeroa
Clifford X Tollner
Leon S Vocelka
Juan R Albares
Arvin I Kusko
Izzy K Sergi
Jones G Bolognia
Julie E Glick
Ricardo E Bowley
Johnson R Venere
Leon I Whobrey
Maisha I Campain
IdCountryDate
1000Italy2024-06-18
1001Japan2024-05-28
1002Argentina2024-05-25
1003France2024-06-04
1004United Kingdom2024-06-16
1005Spain2024-06-07
1006France2024-06-02
1007United Kingdom2024-06-02
1008United Kingdom2024-05-26
1009Russia2024-06-11
1010India2024-06-03
1011Germany2024-06-08
1012Russia2024-06-18
1013Russia2024-06-14
1014Spain2024-05-29
1015Brazil2024-05-27
1016Spain2024-05-25
1017Japan2024-06-03
1018Australia2024-06-07
1019Canada2024-06-11
1020India2024-05-20
1021Russia2024-06-01
1022India2024-06-03
1023Australia2024-05-20
1024Canada2024-06-14
1025Brazil2024-06-13
1026India2024-05-20
1027Spain2024-05-27
1028United Kingdom2024-06-02
1029Germany2024-06-16
1030Russia2024-05-29
1031Australia2024-06-17
1032Australia2024-06-10
1033India2024-05-26
1034Italy2024-06-13
1035Brazil2024-05-23
1036Japan2024-05-27
1037Russia2024-05-27
1038Russia2024-06-14
1039India2024-06-05
1040United Kingdom2024-05-26
1041Russia2024-06-10
1042India2024-06-15
1043Italy2024-05-23
1044Spain2024-05-27
1045India2024-06-18
1046Brazil2024-05-20
1047United Kingdom2024-06-09
1048Spain2024-06-07
1049Australia2024-05-21

On-Demand Data

NameIdCountryDate
Jefferson V Paprocki1000Russia2024-06-15
Silvio B Rim1001United Kingdom2024-05-25
Maisha I Perin1002Canada2024-06-11
Morrow S Morasca1003France2024-05-22
Chavez D Ruta1004Russia2024-06-02
Emily G Morasca1005India2024-05-28
Rodrigues A Poquette1006Germany2024-05-23
Mayumi I Ostrosky1007Australia2024-06-08
Claire W Ostrosky1008Australia2024-06-18
Leon Z Morasca1009India2024-06-12
James O Campain1010Italy2024-05-27
Francesco L Caudy1011Japan2024-05-29
Aika B Shinko1012Canada2024-05-28
Clifford D Nestle1013Brazil2024-06-01
Wickens U Oldroyd1014Italy2024-05-31
Sinclair Y Ruta1015France2024-05-22
Isabel K Flosi1016Spain2024-06-08
Sinclair C Caldarera1017Argentina2024-05-20
Jennifer R Venere1018Argentina2024-05-27
Ashley M Flosi1019India2024-06-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo U NestleCanadaElwin Sharvill UNQUALIFIED
Smith W SergiUnited KingdomAnna Fali UNQUALIFIED
Cody V DoeAustraliaIvan Magalhaes NEW
Julie L SlusarskiRussiaIvan Magalhaes QUALIFIED
Aditya M FlosiCanadaIvan Magalhaes QUALIFIED
Octavia C FerenczSpainStephen Shaw PROPOSAL
Chavez K RulapaughJapanIvan Magalhaes QUALIFIED
Munro F FlosiItalyBernardo Dominic PROPOSAL
Octavia D WaycottBrazilIoni Bowcher QUALIFIED
Mayumi E BowleyCanadaAmy Elsner NEGOTIATION
Juan A MacleadIndiaAnna Fali QUALIFIED
Stacey Q MorascaUnited KingdomAsiya Javayant NEGOTIATION
Faith I WieserFranceAnna Fali UNQUALIFIED
Smith Q CaldareraBrazilAsiya Javayant QUALIFIED
Misaki G AlbaresIndiaIvan Magalhaes UNQUALIFIED
Salvatore B ChuiRussiaElwin Sharvill RENEWAL
Julie N MaletFranceAsiya Javayant UNQUALIFIED
Ivar Q FigeroaGermanyIoni Bowcher NEGOTIATION
Kadeem J OstroskyGermanyAmy Elsner PROPOSAL
Greenwood J MaletCanadaAsiya Javayant PROPOSAL
Costa W MacleadSpainStephen Shaw NEGOTIATION
Leja J KuskoFranceAmy Elsner PROPOSAL
Deepesh Z IturbideItalyAnna Fali QUALIFIED
Jeanfrancois N KolmetzRussiaAmy Elsner QUALIFIED
Ricardo Q CampainBrazilXuxue Feng NEW
Clifford J RutaUnited KingdomBernardo Dominic NEW
Ivar U SchemmerBrazilBernardo Dominic UNQUALIFIED
Emily R DilliardItalyIoni Bowcher RENEWAL
Kadeem W FerenczFranceElwin Sharvill NEW
Silvio T MacleadCanadaElwin Sharvill NEW
Adams X MacleadGermanyAnna Fali UNQUALIFIED
Darci Q IturbideUnited KingdomOnyama Limba NEW
Rodrigues Y FerenczJapanBernardo Dominic UNQUALIFIED
Jeanfrancois Y BowleySpainIvan Magalhaes NEW
Cody N StockhamJapanStephen Shaw NEW
Ricardo H FlosiFranceAsiya Javayant UNQUALIFIED
Nicolas A GillianArgentinaAsiya Javayant NEGOTIATION
Aditya N GarufiCanadaXuxue Feng UNQUALIFIED
Jennifer M MorascaBrazilAnna Fali UNQUALIFIED
Chavez X CaudyCanadaOnyama Limba RENEWAL

<style>
    .ui-datatable-frozenlayout-left {
        width: 20%;
    }

    .ui-datatable-frozenlayout-right {
        width: 80%;
    }
</style>


<h:form>
    <div class="card">
        <h5 style="margin-top:0">Vertical</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers1}" scrollable="true" scrollHeight="250">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Horizontal</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers2}" scrollable="true" scrollWidth="600">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Horizontal and Vertical</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers3}" scrollable="true" scrollWidth="50%" scrollHeight="250">
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
            <p:column headerText="Company" footerText="Company">
                <h:outputText value="#{customer.company}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
            <p:column headerText="Activity" footerText="Activity">
                <h:outputText value="#{customer.activity}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Frozen Rows</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers4}" scrollable="true" scrollHeight="250"
                     frozenRows="2">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Frozen Columns</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers5}" scrollable="true" scrollHeight="250"
                     scrollWidth="300" frozenColumns="1">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h3>On-Demand Data</h3>
        <p:dataTable var="customer" value="#{dtScrollView.customers6}" scrollRows="20" scrollable="true" liveScroll="true" scrollHeight="150">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Virtual Scrolling - 20000 Rows</h5>
        <p:dataTable var="customer" value="#{dtScrollView.lazyModel}" scrollRows="20" scrollable="true"
                     virtualScroll="true" scrollHeight="200" rows="40" style="margin-bottom:0">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

</h:form>