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
Jones B IturbideCanadaStephen Shaw NEGOTIATION
Tony Q MaletJapanIoni Bowcher PROPOSAL
Ricardo B CampainAustraliaIvan Magalhaes PROPOSAL
Francesco M SlusarskiUnited KingdomIvan Magalhaes NEW
Aditya H RulapaughUnited KingdomIoni Bowcher QUALIFIED
Morrow D RulapaughFranceOnyama Limba RENEWAL
Murillo F GillianUnited KingdomOnyama Limba PROPOSAL
Morrow U PoquetteRussiaAsiya Javayant PROPOSAL
Chavez N ChuiJapanIoni Bowcher UNQUALIFIED
Kaitlin Y SlusarskiAustraliaBernardo Dominic PROPOSAL
Juan Z DarakjyArgentinaXuxue Feng QUALIFIED
Isabel Y BologniaUnited KingdomElwin Sharvill NEGOTIATION
Adams C GillianArgentinaAsiya Javayant PROPOSAL
Murillo C StockhamSpainIoni Bowcher NEW
Adams B PoquetteGermanyAnna Fali NEW
Aruna J VenereItalyAsiya Javayant NEW
Ricardo L NickaArgentinaXuxue Feng NEGOTIATION
Aditya L MorascaIndiaElwin Sharvill UNQUALIFIED
Antonio J MarrierBrazilAmy Elsner PROPOSAL
Jennifer S BowleyUnited KingdomIoni Bowcher PROPOSAL
Isabel S CaldareraItalyIvan Magalhaes UNQUALIFIED
Kadeem V MarrierUnited KingdomIvan Magalhaes RENEWAL
Isabel K FigeroaJapanAnna Fali PROPOSAL
Wickens D GauchoJapanAmy Elsner NEW
Claire T KolmetzItalyOnyama Limba PROPOSAL
Alejandro Q CaldareraAustraliaAmy Elsner NEGOTIATION
Nicolas Z DarakjyCanadaAsiya Javayant NEW
Deepesh A FlosiAustraliaOnyama Limba UNQUALIFIED
Morrow Y RulapaughUnited KingdomAmy Elsner PROPOSAL
Emily L SergiJapanOnyama Limba UNQUALIFIED
Aditya Z FerenczJapanIvan Magalhaes QUALIFIED
Stacey B IturbideRussiaIoni Bowcher NEW
Silvio U PoquetteFranceAmy Elsner QUALIFIED
Cody I ShinkoRussiaIoni Bowcher NEGOTIATION
Misaki C GlickAustraliaAnna Fali NEW
Aditya Y CaldareraGermanyIoni Bowcher UNQUALIFIED
Jennifer R ButtIndiaIoni Bowcher PROPOSAL
Izzy Z PerinRussiaStephen Shaw PROPOSAL
David P StockhamAustraliaAmy Elsner RENEWAL
Jennifer A SergiJapanElwin Sharvill NEGOTIATION
Francesco B RimBrazilBernardo Dominic PROPOSAL
Claire R ButtAustraliaAnna Fali QUALIFIED
Ricardo P RoysterFranceIvan Magalhaes UNQUALIFIED
Emily T OldroydGermanyAsiya Javayant UNQUALIFIED
Costa E StensethCanadaOnyama Limba NEGOTIATION
Maisha Q DarakjyCanadaIvan Magalhaes NEW
Ivar G FollerJapanIvan Magalhaes RENEWAL
James R SergiUnited KingdomOnyama Limba RENEWAL
Darci M DilliardUnited KingdomOnyama Limba RENEWAL
Silvio J BologniaRussiaElwin Sharvill PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Munro H GlickBrazilAmy Elsner PROPOSAL
Morrow A FerenczAustraliaIvan Magalhaes RENEWAL
Rodrigues F MaletItalyBernardo Dominic NEW
Francesco H WhobreyBrazilAsiya Javayant PROPOSAL
Juan L MaletUnited KingdomIvan Magalhaes PROPOSAL
Murillo T StockhamIndiaStephen Shaw NEW
Costa N PerinFranceStephen Shaw UNQUALIFIED
Clifford T ButtAustraliaElwin Sharvill NEGOTIATION
Darci F CaudyIndiaAnna Fali NEGOTIATION
Silvio V NickaRussiaAnna Fali QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas K MaletIndia2024-06-11Commercial Press RENEWAL69Amy Elsner
1001Kadeem S ButtIndia2024-05-15Feltz Printing Service NEW56Bernardo Dominic
1002Salvatore Q RimGermany2024-05-28Dorl, James J Esq UNQUALIFIED11Asiya Javayant
1003Morrow C ShinkoCanada2024-06-13Dorl, James J Esq RENEWAL13Stephen Shaw
1004Munro P VenereFrance2024-06-01Chanay, Jeffrey A Esq NEGOTIATION29Anna Fali
1005Misaki F PaprockiIndia2024-06-12Benton, John B Jr RENEWAL62Onyama Limba
1006Jennifer A DilliardBrazil2024-06-03Chanay, Jeffrey A Esq PROPOSAL99Ivan Magalhaes
1007Salvatore I GauchoSpain2024-06-10Buckley Miller Wright QUALIFIED19Amy Elsner
1008Jones F SaylorsGermany2024-06-13Dorl, James J Esq NEW55Onyama Limba
1009Munro S SchemmerIndia2024-05-18Feltz Printing Service NEW22Elwin Sharvill
1010Stacey T NickaSpain2024-06-12Chemel, James L Cpa RENEWAL72Bernardo Dominic
1011Ivar C PaprockiUnited Kingdom2024-05-19Benton, John B Jr QUALIFIED27Onyama Limba
1012Claire L TollnerIndia2024-05-21Printing Dimensions UNQUALIFIED99Bernardo Dominic
1013Ivar N WieserCanada2024-06-02Commercial Press RENEWAL20Stephen Shaw
1014Octavia H CaldareraFrance2024-05-27Printing Dimensions PROPOSAL81Bernardo Dominic
1015Leja B FigeroaArgentina2024-05-22Chapman, Ross E Esq QUALIFIED47Ioni Bowcher
1016Adams I PoquetteBrazil2024-05-19Commercial Press QUALIFIED74Amy Elsner
1017Cody G MaletFrance2024-06-12Chanay, Jeffrey A Esq QUALIFIED8Elwin Sharvill
1018Nicolas U PerinGermany2024-05-31Feiner Bros RENEWAL16Amy Elsner
1019Mayumi W ChuiJapan2024-05-16Dorl, James J Esq PROPOSAL39Xuxue Feng
1020Aruna Z AlbaresRussia2024-05-17Chemel, James L Cpa UNQUALIFIED54Elwin Sharvill
1021Aditya E WhobreyJapan2024-05-27Chanay, Jeffrey A Esq PROPOSAL51Bernardo Dominic
1022Kaitlin T FigeroaGermany2024-06-12King, Christopher A Esq UNQUALIFIED67Amy Elsner
1023Murillo D AmigonItaly2024-06-07Printing Dimensions NEGOTIATION83Elwin Sharvill
1024Deepesh N GlickIndia2024-06-09Morlong Associates PROPOSAL9Elwin Sharvill
1025Octavia D NestleItaly2024-06-12Chapman, Ross E Esq RENEWAL66Onyama Limba
1026Leon Z OldroydCanada2024-05-16Feltz Printing Service UNQUALIFIED64Stephen Shaw
1027Stacey E ShinkoArgentina2024-05-20Rousseaux, Michael Esq PROPOSAL29Xuxue Feng
1028Cody Z GauchoJapan2024-06-02King, Christopher A Esq UNQUALIFIED4Amy Elsner
1029Kadeem H PaprockiAustralia2024-05-18Printing Dimensions NEGOTIATION62Amy Elsner
1030Tony T DarakjyRussia2024-05-16Chemel, James L Cpa NEGOTIATION37Ioni Bowcher
1031Ricardo U SlusarskiBrazil2024-05-22King, Christopher A Esq PROPOSAL89Amy Elsner
1032Clifford A SlusarskiJapan2024-05-19Printing Dimensions QUALIFIED65Anna Fali
1033Jefferson F KuskoSpain2024-05-15Rousseaux, Michael Esq QUALIFIED19Xuxue Feng
1034Murillo J ChuiBrazil2024-06-09Feltz Printing Service QUALIFIED24Ivan Magalhaes
1035Jefferson I PaprockiIndia2024-05-20Chemel, James L Cpa RENEWAL47Bernardo Dominic
1036Julie T DarakjyJapan2024-05-19Truhlar And Truhlar Attys RENEWAL31Amy Elsner
1037Misaki T DarakjyAustralia2024-05-17Chanay, Jeffrey A Esq RENEWAL85Stephen Shaw
1038Smith P SaylorsCanada2024-05-17Benton, John B Jr QUALIFIED92Stephen Shaw
1039Chavez Z RoysterRussia2024-05-28Morlong Associates QUALIFIED21Stephen Shaw
1040Sinclair I WaycottBrazil2024-06-12Chanay, Jeffrey A Esq UNQUALIFIED5Elwin Sharvill
1041Izzy V StockhamUnited Kingdom2024-05-16Chapman, Ross E Esq QUALIFIED19Bernardo Dominic
1042Ashley Z PaprockiItaly2024-06-07Rangoni Of Florence NEGOTIATION72Xuxue Feng
1043Maisha F DilliardItaly2024-05-16Feltz Printing Service NEGOTIATION69Ioni Bowcher
1044Aditya M DarakjyIndia2024-05-27Printing Dimensions NEGOTIATION88Xuxue Feng
1045Tony H DarakjyCanada2024-06-05King, Christopher A Esq RENEWAL12Stephen Shaw
1046Chavez T DoeSpain2024-05-17Truhlar And Truhlar Attys NEW41Xuxue Feng
1047Stacey I PerinJapan2024-05-18Buckley Miller Wright PROPOSAL9Elwin Sharvill
1048Alejandro O TollnerGermany2024-05-25Commercial Press QUALIFIED8Asiya Javayant
1049Jeanfrancois C WhobreySpain2024-05-23Rangoni Of Florence PROPOSAL14Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Julie B VocelkaBrazilXuxue Feng RENEWAL
Stacey T DilliardAustraliaAnna Fali PROPOSAL
Misaki H GillianUnited KingdomElwin Sharvill NEGOTIATION
Wickens C RulapaughArgentinaXuxue Feng NEW
James C FerenczBrazilAsiya Javayant UNQUALIFIED
Antonio B GauchoAustraliaBernardo Dominic UNQUALIFIED
Jones F SchemmerIndiaAmy Elsner NEGOTIATION
Wickens W RutaCanadaXuxue Feng NEGOTIATION
Costa F GillianFranceXuxue Feng QUALIFIED
Leon X FigeroaRussiaAnna Fali UNQUALIFIED
Rodrigues O OldroydSpainIvan Magalhaes NEW
Wickens E ChuiBrazilAnna Fali PROPOSAL
David G ShinkoIndiaAmy Elsner UNQUALIFIED
Antonio U KuskoGermanyAnna Fali PROPOSAL
Alejandro Y GillianArgentinaStephen Shaw NEGOTIATION
Nicolas Q MarrierArgentinaIoni Bowcher QUALIFIED
Alejandro Z RulapaughGermanyAsiya Javayant RENEWAL
Aditya G FollerAustraliaElwin Sharvill RENEWAL
Silvio S SchemmerGermanyIvan Magalhaes NEGOTIATION
Rodrigues I CaldareraAustraliaAnna Fali PROPOSAL
Kaitlin Y OldroydCanadaOnyama Limba NEW
Maria P MaletItalyAmy Elsner PROPOSAL
Kadeem R GauchoAustraliaBernardo Dominic RENEWAL
David T AlbaresGermanyIoni Bowcher NEW
Francesco H FollerItalyOnyama Limba PROPOSAL
Nicolas I RimIndiaIvan Magalhaes UNQUALIFIED
Maria K RutaJapanXuxue Feng NEGOTIATION
Morrow I KolmetzGermanyElwin Sharvill UNQUALIFIED
Deepesh K BriddickFranceElwin Sharvill NEGOTIATION
Jefferson C RulapaughIndiaElwin Sharvill NEW
Morrow T WaycottUnited KingdomAsiya Javayant NEW
Silvio O FlosiItalyBernardo Dominic QUALIFIED
Salvatore E CaldareraIndiaElwin Sharvill RENEWAL
Adams P GarufiArgentinaBernardo Dominic RENEWAL
Ashley P GarufiGermanyElwin Sharvill QUALIFIED
Leon U WaycottAustraliaOnyama Limba NEGOTIATION
Claire L BowleyRussiaXuxue Feng NEW
Izzy W TollnerItalyAsiya Javayant NEW
Chavez V FerenczArgentinaOnyama Limba UNQUALIFIED
James O CampainGermanyIvan Magalhaes NEGOTIATION
James Y SergiIndiaElwin Sharvill UNQUALIFIED
Julie B CaldareraRussiaAmy Elsner QUALIFIED
Claire R WhobreyFranceElwin Sharvill NEW
Claire G DilliardGermanyAnna Fali PROPOSAL
Aruna P VocelkaBrazilIoni Bowcher RENEWAL
Ricardo Y NickaIndiaStephen Shaw UNQUALIFIED
Julie F MaletIndiaAmy Elsner PROPOSAL
Faith N OstroskySpainIvan Magalhaes QUALIFIED
Costa I GillianGermanyIvan Magalhaes NEW
Kaitlin S GauchoGermanyIoni Bowcher PROPOSAL
Frozen Columns
Name
Darci X Inouye
Maria N Campain
Maria F Figeroa
Greenwood U Nestle
James R Kolmetz
Leon S Ferencz
Mayumi V Rulapaugh
Chavez E Caldarera
Emily Y Vocelka
Stacey J Butt
Jones W Ruta
Smith O Paprocki
Silvio W Doe
Jeanfrancois N Inouye
Faith H Shinko
Costa B Royster
Salvatore O Caudy
Isabel B Wieser
Costa Q Dilliard
Ashley X Waycott
David B Campain
Munro X Nicka
Maria J Waycott
Costa S Saylors
Aika D Campain
Cody H Poquette
Jennifer G Oldroyd
Cody E Saylors
Julie P Garufi
Izzy Q Vocelka
Salvatore L Stenseth
Antonio Y Caudy
Chavez D Dilliard
Kadeem P Amigon
Arvin P Inouye
Aruna U Darakjy
Johnson P Saylors
Salvatore Y Inouye
Izzy E Royster
Aruna J Caldarera
Deepesh Z Slusarski
David G Saylors
Ashley R Paprocki
Kaitlin J Inouye
Mayumi F Foller
Nicolas S Ruta
Chavez V Ostrosky
Ricardo S Gaucho
Cody D Rulapaugh
Ashley V Nicka
IdCountryDate
1000Russia2024-05-29
1001Brazil2024-05-30
1002Japan2024-05-27
1003India2024-05-17
1004Canada2024-05-23
1005Spain2024-06-12
1006Germany2024-06-11
1007United Kingdom2024-06-09
1008Argentina2024-06-08
1009Argentina2024-05-24
1010Germany2024-06-07
1011France2024-06-09
1012Australia2024-06-02
1013India2024-06-12
1014Japan2024-06-08
1015Germany2024-06-05
1016Canada2024-06-06
1017Germany2024-06-07
1018India2024-06-07
1019Australia2024-05-20
1020France2024-05-21
1021United Kingdom2024-05-27
1022Spain2024-05-16
1023Australia2024-06-11
1024United Kingdom2024-05-16
1025Brazil2024-05-23
1026Canada2024-06-05
1027Spain2024-05-28
1028United Kingdom2024-05-31
1029Argentina2024-05-24
1030Brazil2024-05-28
1031Brazil2024-06-12
1032Australia2024-05-24
1033France2024-06-03
1034Japan2024-06-11
1035Australia2024-05-17
1036Spain2024-06-01
1037India2024-05-20
1038Australia2024-05-25
1039Canada2024-05-21
1040Germany2024-05-30
1041United Kingdom2024-06-01
1042Spain2024-05-15
1043France2024-05-21
1044Argentina2024-05-29
1045Germany2024-06-12
1046Spain2024-05-18
1047Japan2024-06-09
1048Brazil2024-05-25
1049United Kingdom2024-06-03

On-Demand Data

NameIdCountryDate
Faith Y Foller1000India2024-05-30
Morrow R Albares1001Italy2024-05-15
Sinclair J Rulapaugh1002Spain2024-05-15
Arvin T Tollner1003Russia2024-05-16
Faith V Ostrosky1004United Kingdom2024-06-04
Emily M Briddick1005Spain2024-05-26
Tony T Stockham1006Australia2024-06-08
Arvin Q Briddick1007Russia2024-05-22
Nicolas K Maclead1008Argentina2024-05-20
Adams N Morasca1009Brazil2024-05-30
Sinclair A Waycott1010Canada2024-06-05
Morrow D Caudy1011Brazil2024-05-21
Izzy T Rulapaugh1012Spain2024-06-02
Stacey V Stockham1013France2024-06-01
Arvin C Maclead1014Spain2024-06-06
Juan P Malet1015Brazil2024-06-04
Kaitlin P Paprocki1016Spain2024-05-26
Murillo N Poquette1017United Kingdom2024-05-27
Salvatore J Chui1018Brazil2024-05-28
Izzy O Briddick1019Australia2024-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Darci B FigeroaUnited KingdomIoni Bowcher RENEWAL
Mayumi H GauchoFranceAmy Elsner NEGOTIATION
Maisha H MaletFranceAnna Fali UNQUALIFIED
Greenwood D FerenczArgentinaBernardo Dominic QUALIFIED
Morrow X WaycottAustraliaXuxue Feng PROPOSAL
Octavia X IturbideItalyOnyama Limba QUALIFIED
Jeanfrancois G MacleadItalyXuxue Feng NEW
Jefferson V MacleadSpainXuxue Feng RENEWAL
Clifford R GauchoBrazilIvan Magalhaes PROPOSAL
Munro Q FerenczFranceAsiya Javayant NEW
Maria T IturbideIndiaAsiya Javayant PROPOSAL
Jeanfrancois V RimAustraliaXuxue Feng NEW
Julie U SaylorsSpainAmy Elsner NEW
Adams K ButtAustraliaAmy Elsner QUALIFIED
Julie N MaletArgentinaIoni Bowcher NEW
Juan M MaletFranceStephen Shaw NEGOTIATION
Jeanfrancois C IturbideRussiaAsiya Javayant NEGOTIATION
Morrow D NickaFranceOnyama Limba NEW
Aruna T SchemmerRussiaXuxue Feng NEGOTIATION
Jones X WieserSpainIoni Bowcher QUALIFIED
Deepesh I SergiUnited KingdomStephen Shaw RENEWAL
Aika H RimArgentinaStephen Shaw PROPOSAL
Octavia E KolmetzRussiaOnyama Limba RENEWAL
Darci Z ChuiGermanyXuxue Feng UNQUALIFIED
Tony N OstroskyUnited KingdomIvan Magalhaes PROPOSAL
Adams M WaycottFranceStephen Shaw NEGOTIATION
Ricardo D AmigonIndiaIvan Magalhaes UNQUALIFIED
Julie Y DoeJapanBernardo Dominic PROPOSAL
Alejandro H GarufiIndiaElwin Sharvill PROPOSAL
Aika C AlbaresUnited KingdomIoni Bowcher NEGOTIATION
Greenwood R OldroydAustraliaXuxue Feng NEGOTIATION
Silvio G CampainFranceOnyama Limba UNQUALIFIED
Tony T GauchoBrazilAmy Elsner NEGOTIATION
Adams V WieserBrazilAmy Elsner QUALIFIED
Darci H ShinkoBrazilElwin Sharvill NEGOTIATION
Deepesh E VenereIndiaIvan Magalhaes UNQUALIFIED
Faith C BriddickBrazilAnna Fali QUALIFIED
Jefferson P IturbideCanadaAnna Fali QUALIFIED
Kaitlin U NickaIndiaBernardo Dominic RENEWAL
Jefferson T VenereIndiaBernardo Dominic PROPOSAL

<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>