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
Maisha M KuskoGermanyStephen Shaw PROPOSAL
Kadeem L PoquetteBrazilAsiya Javayant NEGOTIATION
Mujtaba B AlbaresUnited KingdomStephen Shaw RENEWAL
Isabel N WhobreyArgentinaBernardo Dominic NEGOTIATION
Deepesh D FollerCanadaOnyama Limba NEW
Jefferson O SergiItalyIvan Magalhaes PROPOSAL
Ashley T RutaCanadaOnyama Limba QUALIFIED
Greenwood O WaycottRussiaOnyama Limba NEGOTIATION
Julie O IturbideItalyElwin Sharvill RENEWAL
Jefferson V SchemmerFranceOnyama Limba NEGOTIATION
Kaitlin N RutaRussiaStephen Shaw NEGOTIATION
Julie S WhobreyJapanIvan Magalhaes UNQUALIFIED
Faith M BriddickBrazilOnyama Limba NEGOTIATION
Johnson W BologniaBrazilStephen Shaw PROPOSAL
Maisha E AmigonBrazilAnna Fali PROPOSAL
Mujtaba U VenereJapanBernardo Dominic QUALIFIED
Jennifer Q MaletBrazilOnyama Limba NEW
Clifford B MacleadCanadaAnna Fali UNQUALIFIED
Aika S DoeRussiaStephen Shaw NEGOTIATION
Aruna T DarakjyIndiaXuxue Feng UNQUALIFIED
Morrow W MacleadBrazilElwin Sharvill NEW
Murillo Q RoysterFranceOnyama Limba QUALIFIED
Leja O GillianFranceAmy Elsner NEGOTIATION
Johnson P AmigonBrazilBernardo Dominic UNQUALIFIED
Rodrigues Y WieserJapanIoni Bowcher NEGOTIATION
Julie O GarufiUnited KingdomIvan Magalhaes RENEWAL
Claire R DilliardAustraliaAmy Elsner UNQUALIFIED
Silvio N WieserRussiaAmy Elsner NEW
Mayumi L CaudyBrazilXuxue Feng NEGOTIATION
Murillo X FerenczItalyAsiya Javayant PROPOSAL
Jones A PoquetteCanadaOnyama Limba NEGOTIATION
Munro B StockhamSpainElwin Sharvill UNQUALIFIED
Claire P RutaUnited KingdomIoni Bowcher QUALIFIED
Murillo W ButtGermanyIoni Bowcher PROPOSAL
Antonio E OldroydArgentinaAnna Fali PROPOSAL
Jefferson Z OldroydSpainBernardo Dominic RENEWAL
Greenwood I ChuiUnited KingdomXuxue Feng RENEWAL
Ashley C GauchoFranceIoni Bowcher UNQUALIFIED
Jefferson I MorascaCanadaIvan Magalhaes NEGOTIATION
Rodrigues S BologniaSpainElwin Sharvill QUALIFIED
Izzy P GarufiIndiaAsiya Javayant PROPOSAL
Octavia X InouyeSpainAsiya Javayant RENEWAL
Jefferson O SaylorsUnited KingdomAmy Elsner RENEWAL
Smith J DoeBrazilIoni Bowcher UNQUALIFIED
Cody B MacleadGermanyAsiya Javayant QUALIFIED
Greenwood B ButtFranceElwin Sharvill PROPOSAL
Cody X TollnerUnited KingdomOnyama Limba NEW
Juan O BriddickAustraliaAmy Elsner UNQUALIFIED
Jones E CaudyJapanIvan Magalhaes RENEWAL
Maisha Z NestleJapanBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Emily S MorascaSpainOnyama Limba NEGOTIATION
Aika N ShinkoUnited KingdomBernardo Dominic NEGOTIATION
Aditya F GlickIndiaOnyama Limba PROPOSAL
Nicolas L AlbaresJapanStephen Shaw NEW
Clifford X BologniaAustraliaXuxue Feng RENEWAL
Clifford T NestleAustraliaAsiya Javayant QUALIFIED
Alejandro O RoysterAustraliaAmy Elsner RENEWAL
Salvatore O WhobreyGermanyAnna Fali NEW
Kadeem V FlosiSpainAnna Fali NEGOTIATION
Maisha Q DarakjyUnited KingdomBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem X AlbaresAustralia2024-06-21Chemel, James L Cpa UNQUALIFIED17Onyama Limba
1001Leon V GarufiJapan2024-06-18Benton, John B Jr PROPOSAL19Stephen Shaw
1002Aditya E VocelkaUnited Kingdom2024-06-14Morlong Associates QUALIFIED48Onyama Limba
1003James P CampainItaly2024-05-31Truhlar And Truhlar Attys QUALIFIED37Elwin Sharvill
1004David C WieserUnited Kingdom2024-06-21Feltz Printing Service NEGOTIATION16Asiya Javayant
1005Smith Z WaycottCanada2024-06-10Morlong Associates NEW98Ioni Bowcher
1006Octavia A MaletAustralia2024-06-03Commercial Press NEW17Anna Fali
1007Smith O NestleGermany2024-06-19Printing Dimensions NEGOTIATION49Stephen Shaw
1008Munro V GauchoItaly2024-06-18Morlong Associates QUALIFIED11Anna Fali
1009Chavez X GlickBrazil2024-06-13Feltz Printing Service NEGOTIATION95Elwin Sharvill
1010Rodrigues V FigeroaItaly2024-06-12Chapman, Ross E Esq NEW98Ioni Bowcher
1011Greenwood A IturbideAustralia2024-06-22Chanay, Jeffrey A Esq RENEWAL47Ioni Bowcher
1012Rodrigues H ShinkoSpain2024-06-08Printing Dimensions NEGOTIATION44Onyama Limba
1013Jennifer B AmigonItaly2024-06-20Chanay, Jeffrey A Esq PROPOSAL80Asiya Javayant
1014Kadeem L SlusarskiGermany2024-06-11Chapman, Ross E Esq PROPOSAL8Ivan Magalhaes
1015Juan U WhobreyRussia2024-06-06Chapman, Ross E Esq RENEWAL79Elwin Sharvill
1016Darci H GauchoSpain2024-05-27King, Christopher A Esq UNQUALIFIED2Bernardo Dominic
1017Munro I CaudyFrance2024-06-09Chanay, Jeffrey A Esq UNQUALIFIED45Stephen Shaw
1018Isabel L MorascaCanada2024-06-08Feltz Printing Service RENEWAL22Stephen Shaw
1019Jennifer W GillianRussia2024-06-02Chapman, Ross E Esq PROPOSAL26Bernardo Dominic
1020Rodrigues D OstroskyBrazil2024-06-09Morlong Associates NEW40Xuxue Feng
1021Ashley R NickaUnited Kingdom2024-06-10Feltz Printing Service RENEWAL23Asiya Javayant
1022Kadeem Y CaudyIndia2024-06-22Feiner Bros NEW5Ivan Magalhaes
1023Kaitlin O MarrierRussia2024-06-03Commercial Press RENEWAL44Xuxue Feng
1024Smith V CaldareraIndia2024-06-09Chanay, Jeffrey A Esq NEW77Elwin Sharvill
1025Ricardo R VenereFrance2024-05-28Rousseaux, Michael Esq UNQUALIFIED54Anna Fali
1026Izzy X StensethGermany2024-06-02Truhlar And Truhlar Attys NEGOTIATION4Ioni Bowcher
1027Kadeem Y MaletUnited Kingdom2024-06-18Buckley Miller Wright PROPOSAL28Xuxue Feng
1028Ricardo M DoeSpain2024-05-28King, Christopher A Esq PROPOSAL15Xuxue Feng
1029James M AlbaresJapan2024-06-20Rousseaux, Michael Esq NEW86Ioni Bowcher
1030Aruna O CaudyArgentina2024-06-09Rousseaux, Michael Esq PROPOSAL19Ivan Magalhaes
1031Wickens J DarakjyJapan2024-05-31Chemel, James L Cpa RENEWAL65Ioni Bowcher
1032Murillo G CaldareraArgentina2024-05-30Feltz Printing Service RENEWAL5Stephen Shaw
1033Jennifer C RimIndia2024-05-30Truhlar And Truhlar Attys QUALIFIED75Bernardo Dominic
1034Nicolas Y BowleyFrance2024-06-22Rangoni Of Florence NEGOTIATION62Onyama Limba
1035Maisha D BowleySpain2024-06-14King, Christopher A Esq NEW25Anna Fali
1036Kaitlin S ButtSpain2024-06-14Chemel, James L Cpa QUALIFIED95Ivan Magalhaes
1037Octavia Q SchemmerFrance2024-06-05Buckley Miller Wright RENEWAL77Amy Elsner
1038Jones M MacleadItaly2024-06-21Dorl, James J Esq RENEWAL71Anna Fali
1039Sinclair Y NestleSpain2024-06-10Benton, John B Jr QUALIFIED34Onyama Limba
1040Salvatore L MarrierFrance2024-06-12Printing Dimensions NEW10Xuxue Feng
1041Antonio P ButtGermany2024-06-06Feiner Bros NEGOTIATION42Xuxue Feng
1042Leja J PerinAustralia2024-05-31Commercial Press PROPOSAL29Bernardo Dominic
1043Munro J SergiItaly2024-06-03Truhlar And Truhlar Attys NEGOTIATION11Bernardo Dominic
1044Leja V FollerItaly2024-06-03King, Christopher A Esq PROPOSAL85Ivan Magalhaes
1045Antonio P MorascaUnited Kingdom2024-06-09Truhlar And Truhlar Attys PROPOSAL73Xuxue Feng
1046Maisha A NickaJapan2024-06-12Printing Dimensions QUALIFIED51Asiya Javayant
1047Leja E PoquetteItaly2024-06-15Printing Dimensions UNQUALIFIED98Elwin Sharvill
1048Rodrigues S PoquetteBrazil2024-06-01Dorl, James J Esq QUALIFIED19Anna Fali
1049Ashley P InouyeIndia2024-06-06Feiner Bros NEGOTIATION77Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
James A VocelkaRussiaOnyama Limba UNQUALIFIED
Adams L GlickAustraliaIoni Bowcher QUALIFIED
Wickens O FigeroaJapanIoni Bowcher PROPOSAL
Emily M FigeroaArgentinaXuxue Feng RENEWAL
Mujtaba P GauchoFranceBernardo Dominic UNQUALIFIED
Morrow C NestleArgentinaAsiya Javayant RENEWAL
Aruna K ButtArgentinaStephen Shaw NEW
Johnson E MacleadIndiaAnna Fali NEGOTIATION
Aika N IturbideUnited KingdomAmy Elsner NEGOTIATION
Juan N TollnerItalyBernardo Dominic RENEWAL
Faith Z KuskoAustraliaIvan Magalhaes NEW
Jennifer D PerinCanadaStephen Shaw RENEWAL
Maisha I RimRussiaIvan Magalhaes RENEWAL
Tony K BologniaArgentinaAmy Elsner RENEWAL
Clifford W MarrierUnited KingdomBernardo Dominic UNQUALIFIED
Leon K GarufiItalyIoni Bowcher RENEWAL
Arvin V AmigonArgentinaStephen Shaw PROPOSAL
Morrow G AmigonBrazilIvan Magalhaes NEW
Silvio M IturbideItalyIvan Magalhaes QUALIFIED
Aditya X BriddickFranceAsiya Javayant UNQUALIFIED
Kaitlin H RimCanadaElwin Sharvill PROPOSAL
Francesco U DoeArgentinaXuxue Feng NEW
Cody P PoquetteJapanIoni Bowcher RENEWAL
Leja W MaletBrazilAsiya Javayant NEW
Jones D VocelkaIndiaAnna Fali NEW
Tony P DoeJapanOnyama Limba RENEWAL
Chavez H StockhamAustraliaAnna Fali RENEWAL
Munro D RutaSpainIvan Magalhaes RENEWAL
Aika D FerenczIndiaStephen Shaw QUALIFIED
Misaki E IturbideJapanElwin Sharvill PROPOSAL
Aika A VocelkaItalyElwin Sharvill PROPOSAL
Misaki Y PoquetteGermanyStephen Shaw PROPOSAL
Maisha J MacleadGermanyElwin Sharvill NEW
Adams F DarakjyIndiaElwin Sharvill UNQUALIFIED
Munro L MarrierArgentinaBernardo Dominic QUALIFIED
Julie G PaprockiIndiaAsiya Javayant NEW
Rodrigues A InouyeSpainStephen Shaw UNQUALIFIED
Nicolas G NestleArgentinaXuxue Feng RENEWAL
Julie L GarufiJapanIvan Magalhaes RENEWAL
Deepesh Y DoeIndiaElwin Sharvill RENEWAL
Chavez R VenereArgentinaIoni Bowcher PROPOSAL
Wickens V OldroydBrazilIvan Magalhaes NEGOTIATION
Sinclair C GlickAustraliaAnna Fali RENEWAL
Ashley Y SchemmerFranceAmy Elsner RENEWAL
Rodrigues D AmigonRussiaStephen Shaw NEGOTIATION
Misaki A StockhamGermanyXuxue Feng UNQUALIFIED
Francesco N DilliardUnited KingdomAnna Fali NEW
Aruna B GillianAustraliaIoni Bowcher QUALIFIED
Stacey Q MorascaSpainStephen Shaw NEW
Leon Z CaudySpainAsiya Javayant QUALIFIED
Frozen Columns
Name
Leja K Gaucho
Nicolas K Nestle
Darci J Briddick
Sinclair F Ostrosky
Salvatore Y Maclead
Morrow D Shinko
Tony V Dilliard
Jefferson Q Nicka
Adams N Ferencz
Costa N Iturbide
Aditya H Flosi
Mayumi V Vocelka
Kaitlin G Inouye
Ashley C Kusko
Arvin N Campain
Murillo I Ruta
Cody A Royster
Isabel C Ruta
Alejandro W Sergi
Cody R Doe
Greenwood Q Schemmer
Morrow T Caudy
Francesco A Venere
Antonio M Slusarski
Aika C Iturbide
Tony Q Malet
Murillo F Briddick
Munro N Waycott
Tony T Gillian
Johnson J Rim
Salvatore A Kolmetz
Munro T Slusarski
Costa X Darakjy
Leja Z Gaucho
Costa H Glick
Ricardo V Malet
Sinclair F Poquette
Maisha O Perin
Tony L Shinko
Salvatore X Ostrosky
Greenwood W Vocelka
Greenwood N Nicka
James A Chui
Francesco S Flosi
Mayumi Y Whobrey
Julie O Paprocki
Adams R Briddick
Arvin R Garufi
Aditya A Rulapaugh
Nicolas A Nicka
IdCountryDate
1000Japan2024-06-16
1001Spain2024-06-05
1002Spain2024-06-03
1003Canada2024-06-11
1004Italy2024-06-06
1005Brazil2024-06-05
1006Russia2024-05-24
1007Australia2024-05-24
1008Australia2024-06-14
1009Japan2024-06-19
1010Germany2024-06-10
1011India2024-05-26
1012India2024-06-21
1013Argentina2024-05-30
1014France2024-06-08
1015Brazil2024-05-27
1016Germany2024-05-27
1017France2024-05-24
1018United Kingdom2024-06-21
1019Argentina2024-05-29
1020Russia2024-05-29
1021India2024-06-04
1022France2024-06-03
1023Australia2024-06-21
1024France2024-06-21
1025Brazil2024-06-17
1026Germany2024-06-02
1027United Kingdom2024-06-17
1028Germany2024-06-06
1029France2024-06-16
1030Canada2024-05-31
1031Italy2024-05-27
1032Argentina2024-06-03
1033Argentina2024-06-20
1034Australia2024-05-29
1035India2024-06-01
1036Brazil2024-06-22
1037Germany2024-06-02
1038Canada2024-05-30
1039Australia2024-06-04
1040Germany2024-05-29
1041France2024-06-16
1042Russia2024-06-15
1043Italy2024-06-20
1044Brazil2024-06-18
1045Italy2024-06-15
1046Japan2024-05-27
1047Argentina2024-06-17
1048Germany2024-05-27
1049Italy2024-06-09

On-Demand Data

NameIdCountryDate
Aditya W Ostrosky1000Italy2024-06-11
Silvio O Amigon1001Russia2024-06-18
Rodrigues Y Garufi1002France2024-05-27
Ricardo R Malet1003Italy2024-06-12
Darci A Iturbide1004United Kingdom2024-06-15
Ashley R Dilliard1005Spain2024-06-17
Emily R Sergi1006Brazil2024-05-31
Morrow I Campain1007Australia2024-06-14
Kadeem P Malet1008France2024-06-12
Emily Y Saylors1009Brazil2024-06-06
Faith R Chui1010Brazil2024-06-13
Chavez O Iturbide1011Australia2024-06-21
Francesco H Malet1012Argentina2024-06-14
Aika R Perin1013France2024-05-27
Jones E Nicka1014Spain2024-06-08
Faith W Stockham1015India2024-05-25
Stacey S Royster1016Argentina2024-05-30
Leon O Paprocki1017United Kingdom2024-06-20
Ivar K Gaucho1018Spain2024-06-07
Mujtaba K Bowley1019Russia2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair M VenereAustraliaBernardo Dominic RENEWAL
Ivar O PerinIndiaStephen Shaw UNQUALIFIED
Aditya J ButtItalyElwin Sharvill UNQUALIFIED
Greenwood I ButtItalyAmy Elsner RENEWAL
Aruna O OstroskyGermanyIvan Magalhaes UNQUALIFIED
Isabel W VocelkaGermanyAnna Fali NEW
Emily L OstroskySpainAnna Fali NEW
Morrow V GillianIndiaOnyama Limba NEW
Ashley S ButtBrazilXuxue Feng NEGOTIATION
Mayumi L ChuiGermanyXuxue Feng UNQUALIFIED
Isabel B MarrierGermanyIoni Bowcher NEW
Salvatore L DoeSpainXuxue Feng PROPOSAL
Jeanfrancois B FerenczIndiaIvan Magalhaes RENEWAL
Jennifer W PaprockiUnited KingdomElwin Sharvill UNQUALIFIED
Rodrigues G SlusarskiCanadaOnyama Limba QUALIFIED
Kaitlin R TollnerArgentinaIvan Magalhaes QUALIFIED
Cody L AlbaresIndiaAmy Elsner PROPOSAL
Murillo S SlusarskiSpainAnna Fali UNQUALIFIED
Costa L MaletFranceAnna Fali QUALIFIED
Leon P AmigonBrazilIoni Bowcher UNQUALIFIED
Greenwood Y StensethAustraliaAnna Fali NEW
Juan K RutaSpainOnyama Limba NEW
Antonio G SergiIndiaStephen Shaw NEGOTIATION
Juan E SlusarskiGermanyXuxue Feng RENEWAL
Francesco X RulapaughAustraliaStephen Shaw UNQUALIFIED
Tony U CaudyAustraliaIvan Magalhaes UNQUALIFIED
Ricardo K DarakjyArgentinaXuxue Feng PROPOSAL
David X AlbaresGermanyIoni Bowcher QUALIFIED
Smith B RulapaughJapanIoni Bowcher PROPOSAL
Rodrigues T CaldareraArgentinaAnna Fali PROPOSAL
Greenwood V RimAustraliaBernardo Dominic QUALIFIED
Maria S RutaCanadaAsiya Javayant PROPOSAL
Sinclair T FlosiJapanIoni Bowcher RENEWAL
Ashley D ChuiUnited KingdomBernardo Dominic NEGOTIATION
Emily S AmigonUnited KingdomAmy Elsner QUALIFIED
Murillo I PoquetteIndiaAsiya Javayant RENEWAL
Octavia O OldroydSpainElwin Sharvill NEGOTIATION
Greenwood L VocelkaIndiaAmy Elsner NEW
Salvatore K BologniaItalyBernardo Dominic NEW
Adams H BowleyAustraliaAsiya Javayant 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>