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
Arvin R IturbideRussiaAmy Elsner PROPOSAL
Faith K SlusarskiRussiaXuxue Feng UNQUALIFIED
Emily H GarufiSpainOnyama Limba PROPOSAL
Ashley L OstroskyGermanyAmy Elsner UNQUALIFIED
Ashley Z SlusarskiGermanyXuxue Feng NEW
Nicolas G VocelkaItalyStephen Shaw PROPOSAL
Darci I BriddickJapanElwin Sharvill NEW
Alejandro C KuskoJapanAmy Elsner QUALIFIED
Arvin W FerenczSpainAnna Fali RENEWAL
Maria D RulapaughBrazilAsiya Javayant QUALIFIED
Ivar N WaycottItalyStephen Shaw PROPOSAL
Tony O PerinCanadaXuxue Feng QUALIFIED
Jefferson I SlusarskiArgentinaElwin Sharvill RENEWAL
Munro X FigeroaBrazilXuxue Feng RENEWAL
Kadeem V VenereIndiaIoni Bowcher NEGOTIATION
Faith Q BologniaSpainIvan Magalhaes QUALIFIED
Nicolas L CaudyJapanAnna Fali NEW
Deepesh J MarrierCanadaIoni Bowcher NEW
Sinclair A AmigonSpainAnna Fali NEGOTIATION
Rodrigues X CaudySpainXuxue Feng NEW
Kaitlin K DilliardSpainIvan Magalhaes PROPOSAL
Sinclair X ChuiAustraliaAmy Elsner PROPOSAL
Jeanfrancois E NestleUnited KingdomAnna Fali QUALIFIED
Jefferson A AmigonCanadaAnna Fali RENEWAL
James B GarufiAustraliaIoni Bowcher NEW
Ivar R GillianRussiaBernardo Dominic NEW
Murillo M PaprockiItalyXuxue Feng UNQUALIFIED
Maria C VenereFranceIoni Bowcher NEGOTIATION
Jeanfrancois P PaprockiGermanyStephen Shaw UNQUALIFIED
Aditya U KuskoCanadaXuxue Feng PROPOSAL
Rodrigues B FlosiItalyElwin Sharvill NEW
Julie E GillianIndiaXuxue Feng NEGOTIATION
Costa I WhobreyUnited KingdomElwin Sharvill NEW
Isabel Z KolmetzGermanyAnna Fali NEW
Francesco A MaletFranceBernardo Dominic RENEWAL
Deepesh L PoquetteGermanyBernardo Dominic NEW
Alejandro D AmigonIndiaIvan Magalhaes NEW
Arvin I MaletGermanyXuxue Feng PROPOSAL
Jeanfrancois P PerinAustraliaAnna Fali RENEWAL
Costa O KuskoIndiaStephen Shaw NEGOTIATION
Jefferson Q CaldareraRussiaElwin Sharvill NEW
Munro P RulapaughCanadaIvan Magalhaes NEW
Rodrigues E VenereFranceAnna Fali QUALIFIED
Cody J MaletArgentinaIoni Bowcher PROPOSAL
Morrow C StockhamAustraliaOnyama Limba QUALIFIED
Tony G OstroskyAustraliaBernardo Dominic RENEWAL
Johnson E CaldareraSpainElwin Sharvill UNQUALIFIED
Rodrigues Y VenereFranceStephen Shaw QUALIFIED
Alejandro W VocelkaBrazilStephen Shaw PROPOSAL
Aruna T DoeArgentinaAnna Fali QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leon Q SlusarskiRussiaStephen Shaw RENEWAL
Stacey I AmigonIndiaAnna Fali NEW
Sinclair Q AmigonRussiaOnyama Limba UNQUALIFIED
Arvin U PerinFranceIoni Bowcher NEGOTIATION
Morrow T SergiCanadaIvan Magalhaes UNQUALIFIED
Johnson X RimIndiaAnna Fali PROPOSAL
Cody O ButtAustraliaAmy Elsner QUALIFIED
Leon W FerenczRussiaAmy Elsner NEW
Ivar L StensethItalyStephen Shaw UNQUALIFIED
David S OldroydCanadaIvan Magalhaes UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas R SergiGermany2024-05-30Feiner Bros NEGOTIATION48Ivan Magalhaes
1001Kadeem E GarufiJapan2024-06-17Chanay, Jeffrey A Esq QUALIFIED4Xuxue Feng
1002Deepesh Y BowleyJapan2024-06-14Truhlar And Truhlar Attys PROPOSAL68Bernardo Dominic
1003Alejandro F DilliardIndia2024-06-11Chanay, Jeffrey A Esq NEGOTIATION6Ivan Magalhaes
1004Leon N MaletArgentina2024-06-03Chapman, Ross E Esq NEGOTIATION65Elwin Sharvill
1005Aruna P SaylorsCanada2024-06-12Morlong Associates NEW71Bernardo Dominic
1006Darci Z GauchoItaly2024-06-01Morlong Associates RENEWAL5Onyama Limba
1007Silvio I SergiRussia2024-06-03Buckley Miller Wright NEW22Elwin Sharvill
1008Ricardo H StensethJapan2024-06-03Chemel, James L Cpa QUALIFIED24Ivan Magalhaes
1009Maisha B SergiSpain2024-06-21Feiner Bros RENEWAL71Bernardo Dominic
1010Mujtaba C RimFrance2024-06-03Rousseaux, Michael Esq NEGOTIATION22Ivan Magalhaes
1011Munro E AmigonUnited Kingdom2024-05-31Truhlar And Truhlar Attys NEW29Anna Fali
1012Wickens Q PaprockiIndia2024-06-04Morlong Associates NEW85Elwin Sharvill
1013Leja P PoquetteItaly2024-06-07Commercial Press QUALIFIED34Bernardo Dominic
1014Mayumi E SergiBrazil2024-05-31Commercial Press NEW33Elwin Sharvill
1015Francesco E GillianBrazil2024-05-27Dorl, James J Esq NEW79Asiya Javayant
1016Johnson C DilliardJapan2024-06-03Rangoni Of Florence UNQUALIFIED94Onyama Limba
1017Cody Q RulapaughUnited Kingdom2024-06-17Morlong Associates UNQUALIFIED92Anna Fali
1018Johnson V PoquetteGermany2024-05-31Dorl, James J Esq RENEWAL90Ivan Magalhaes
1019Aruna S PerinJapan2024-06-19Truhlar And Truhlar Attys QUALIFIED10Ioni Bowcher
1020Cody U RoysterAustralia2024-05-30King, Christopher A Esq UNQUALIFIED43Amy Elsner
1021Mayumi Z InouyeRussia2024-06-21Commercial Press NEW40Xuxue Feng
1022Maria D FerenczUnited Kingdom2024-06-06Feiner Bros UNQUALIFIED76Xuxue Feng
1023Munro R FollerAustralia2024-06-19Rangoni Of Florence UNQUALIFIED73Stephen Shaw
1024Maisha W DilliardSpain2024-06-11Printing Dimensions NEW39Ioni Bowcher
1025Ivar D InouyeRussia2024-06-05Commercial Press RENEWAL97Elwin Sharvill
1026Juan O CaudyItaly2024-05-23Chapman, Ross E Esq NEGOTIATION44Anna Fali
1027David L MaletAustralia2024-06-17Printing Dimensions NEW3Elwin Sharvill
1028Izzy O WhobreyJapan2024-05-30Buckley Miller Wright RENEWAL69Xuxue Feng
1029Isabel B StensethJapan2024-06-16Printing Dimensions PROPOSAL53Xuxue Feng
1030Jones C SlusarskiItaly2024-05-31King, Christopher A Esq QUALIFIED50Anna Fali
1031Faith X WhobreyCanada2024-05-23Feltz Printing Service QUALIFIED65Asiya Javayant
1032Isabel V WhobreyRussia2024-06-14Commercial Press NEW77Stephen Shaw
1033Juan Z GillianIndia2024-06-19Morlong Associates RENEWAL6Stephen Shaw
1034Cody Z OstroskySpain2024-06-03Feiner Bros QUALIFIED95Stephen Shaw
1035Emily N CaudyIndia2024-05-23Rangoni Of Florence NEW52Onyama Limba
1036Jeanfrancois I RimRussia2024-05-26Commercial Press NEW47Anna Fali
1037Cody O OldroydIndia2024-05-24Feltz Printing Service RENEWAL12Ivan Magalhaes
1038Izzy R KolmetzSpain2024-05-28Rousseaux, Michael Esq UNQUALIFIED87Ivan Magalhaes
1039Aika A RimFrance2024-05-27Chanay, Jeffrey A Esq RENEWAL51Bernardo Dominic
1040Francesco U BologniaUnited Kingdom2024-06-15Chemel, James L Cpa NEW83Amy Elsner
1041Smith F NickaJapan2024-05-24Printing Dimensions UNQUALIFIED87Ioni Bowcher
1042Antonio W SergiSpain2024-06-17Chanay, Jeffrey A Esq UNQUALIFIED39Ivan Magalhaes
1043Deepesh L VenereAustralia2024-05-31Feiner Bros QUALIFIED25Stephen Shaw
1044Ricardo W StensethGermany2024-06-10Feltz Printing Service RENEWAL23Onyama Limba
1045Aruna J BologniaGermany2024-06-14Chanay, Jeffrey A Esq RENEWAL40Xuxue Feng
1046Claire C ButtJapan2024-05-27Rangoni Of Florence NEGOTIATION79Xuxue Feng
1047Chavez R MorascaJapan2024-06-15King, Christopher A Esq NEW4Onyama Limba
1048Maria V SaylorsUnited Kingdom2024-06-10Feltz Printing Service QUALIFIED7Stephen Shaw
1049Aika C OldroydAustralia2024-06-06Feltz Printing Service NEW7Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Sinclair V VocelkaBrazilAsiya Javayant PROPOSAL
Tony T WhobreyArgentinaElwin Sharvill QUALIFIED
Ivar V ShinkoArgentinaOnyama Limba NEGOTIATION
Jefferson Q OstroskyUnited KingdomOnyama Limba RENEWAL
Cody D WieserCanadaBernardo Dominic RENEWAL
Chavez D MorascaRussiaOnyama Limba NEGOTIATION
Aditya F DilliardRussiaAsiya Javayant QUALIFIED
Aruna U DilliardBrazilIoni Bowcher QUALIFIED
Jones L ButtJapanElwin Sharvill PROPOSAL
Julie K StensethItalyXuxue Feng QUALIFIED
Johnson M IturbideFranceAmy Elsner PROPOSAL
Aditya B SlusarskiGermanyAnna Fali NEW
Emily N OstroskyIndiaAsiya Javayant UNQUALIFIED
Darci Z RoysterUnited KingdomAmy Elsner NEW
Smith G FigeroaCanadaXuxue Feng NEGOTIATION
Deepesh G VenereSpainElwin Sharvill PROPOSAL
Antonio F WaycottSpainXuxue Feng QUALIFIED
Salvatore V MacleadCanadaIvan Magalhaes UNQUALIFIED
Deepesh R RimRussiaElwin Sharvill UNQUALIFIED
Aruna J WieserBrazilElwin Sharvill NEGOTIATION
Misaki A GlickJapanXuxue Feng UNQUALIFIED
Izzy V MorascaItalyAnna Fali RENEWAL
Stacey K TollnerRussiaBernardo Dominic NEW
Francesco A InouyeUnited KingdomAnna Fali RENEWAL
Aruna Y SergiIndiaIoni Bowcher NEW
Arvin K RulapaughUnited KingdomOnyama Limba RENEWAL
Stacey H MarrierAustraliaBernardo Dominic QUALIFIED
Adams F ButtBrazilElwin Sharvill NEW
Leon E SchemmerArgentinaXuxue Feng RENEWAL
Ivar A PaprockiAustraliaBernardo Dominic NEW
Aditya E PerinArgentinaXuxue Feng PROPOSAL
Antonio N KuskoAustraliaElwin Sharvill RENEWAL
David B PerinIndiaXuxue Feng PROPOSAL
Ricardo O RimCanadaIvan Magalhaes RENEWAL
Cody J BriddickIndiaIoni Bowcher NEW
Clifford U DoeRussiaOnyama Limba RENEWAL
Costa Z RutaBrazilIvan Magalhaes QUALIFIED
Izzy L PoquetteJapanElwin Sharvill RENEWAL
Kadeem Z StensethRussiaIoni Bowcher NEW
Munro K SlusarskiJapanStephen Shaw NEW
Leja P FerenczJapanXuxue Feng PROPOSAL
Maria I SlusarskiJapanStephen Shaw UNQUALIFIED
Antonio M RutaArgentinaAsiya Javayant NEGOTIATION
Adams A StensethRussiaAmy Elsner PROPOSAL
Clifford I OldroydSpainOnyama Limba NEW
Wickens Y CaudyRussiaStephen Shaw PROPOSAL
Salvatore Y FigeroaFranceIoni Bowcher NEGOTIATION
Mujtaba Y WhobreyAustraliaStephen Shaw PROPOSAL
Jefferson R WhobreyBrazilBernardo Dominic NEW
Murillo S InouyeFranceOnyama Limba PROPOSAL
Frozen Columns
Name
Antonio Y Doe
Francesco U Gaucho
James H Garufi
Jeanfrancois R Butt
Stacey A Glick
Izzy F Tollner
Nicolas B Gillian
Greenwood V Gaucho
Jones D Albares
Adams Q Ostrosky
Misaki O Stockham
Darci P Malet
Jones T Stockham
Salvatore M Royster
Adams B Caudy
Aditya S Rulapaugh
Aruna U Caldarera
Salvatore C Ostrosky
Greenwood I Ferencz
Mujtaba H Schemmer
Antonio A Ruta
Misaki N Schemmer
Maisha H Bowley
Aruna O Inouye
Ricardo I Waycott
Mujtaba F Glick
Juan F Briddick
Aika C Kolmetz
Leon G Royster
David O Caudy
Munro W Briddick
Antonio A Poquette
Mujtaba G Amigon
Ricardo K Vocelka
Morrow C Garufi
Mujtaba J Whobrey
Jennifer M Inouye
Tony N Stockham
Octavia M Slusarski
Kadeem V Garufi
Arvin O Bolognia
Jones I Nestle
Misaki S Maclead
Salvatore F Bowley
Faith L Malet
Izzy B Kolmetz
Nicolas C Garufi
Octavia Z Caldarera
Wickens L Poquette
Ivar B Rulapaugh
IdCountryDate
1000Canada2024-06-18
1001Australia2024-06-02
1002Russia2024-06-19
1003Spain2024-06-07
1004Russia2024-06-16
1005Germany2024-05-27
1006Russia2024-06-05
1007Spain2024-06-08
1008Russia2024-06-01
1009Australia2024-05-29
1010Japan2024-05-23
1011Spain2024-06-19
1012Brazil2024-06-08
1013Canada2024-06-17
1014Argentina2024-06-18
1015France2024-06-20
1016United Kingdom2024-06-04
1017Russia2024-05-31
1018Australia2024-05-25
1019United Kingdom2024-06-16
1020Italy2024-05-25
1021India2024-06-15
1022United Kingdom2024-05-28
1023Germany2024-06-02
1024Canada2024-06-18
1025Spain2024-06-15
1026Germany2024-06-15
1027Russia2024-06-05
1028United Kingdom2024-06-10
1029Canada2024-06-05
1030United Kingdom2024-06-06
1031Russia2024-06-09
1032Russia2024-06-10
1033Canada2024-06-02
1034Japan2024-06-05
1035Australia2024-06-14
1036Spain2024-05-29
1037France2024-06-12
1038Argentina2024-06-12
1039Japan2024-05-23
1040India2024-06-16
1041Argentina2024-06-20
1042Spain2024-06-16
1043Germany2024-06-03
1044France2024-06-08
1045Germany2024-06-12
1046United Kingdom2024-06-08
1047India2024-06-07
1048Japan2024-06-21
1049Japan2024-06-15

On-Demand Data

NameIdCountryDate
Francesco V Paprocki1000Russia2024-05-25
Julie B Ostrosky1001Canada2024-06-01
Juan H Amigon1002Australia2024-05-25
Wickens J Paprocki1003Russia2024-06-07
Wickens Z Ruta1004Canada2024-05-24
James Q Tollner1005Brazil2024-06-14
Aruna Z Oldroyd1006Italy2024-06-01
Claire N Gillian1007India2024-06-01
Rodrigues J Ferencz1008France2024-06-11
Emily Y Marrier1009Canada2024-06-19
Ashley T Doe1010Italy2024-06-11
Francesco F Briddick1011Brazil2024-06-16
Claire I Perin1012Argentina2024-05-30
Leon P Caldarera1013Brazil2024-06-11
Jefferson G Figeroa1014France2024-06-20
Deepesh W Garufi1015India2024-06-07
Alejandro F Oldroyd1016Spain2024-06-01
Salvatore I Caldarera1017Canada2024-06-18
Greenwood O Waycott1018Italy2024-06-20
Arvin H Rim1019Spain2024-06-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya N IturbideSpainAnna Fali NEGOTIATION
Greenwood A AmigonFranceElwin Sharvill NEGOTIATION
Jones R GarufiCanadaBernardo Dominic NEGOTIATION
Salvatore F RulapaughRussiaElwin Sharvill RENEWAL
Juan I NickaBrazilElwin Sharvill QUALIFIED
Murillo D WhobreyArgentinaElwin Sharvill UNQUALIFIED
Isabel Q WieserJapanStephen Shaw UNQUALIFIED
Jennifer B SchemmerItalyIvan Magalhaes NEGOTIATION
Greenwood A NestleIndiaAmy Elsner NEW
Leon D NestleArgentinaXuxue Feng NEW
Aditya P BriddickAustraliaBernardo Dominic RENEWAL
Leon Y RutaArgentinaElwin Sharvill PROPOSAL
Alejandro J FollerIndiaElwin Sharvill NEW
Cody T KuskoUnited KingdomIvan Magalhaes QUALIFIED
Costa G StensethUnited KingdomAnna Fali PROPOSAL
Costa I StockhamItalyElwin Sharvill NEW
Mujtaba Q DoeBrazilAmy Elsner NEW
Darci I KuskoSpainBernardo Dominic PROPOSAL
David H BriddickArgentinaAmy Elsner RENEWAL
Aika P NestleGermanyStephen Shaw UNQUALIFIED
Octavia O DilliardGermanyOnyama Limba NEW
Juan H FerenczArgentinaStephen Shaw NEW
Jones Z NickaItalyAsiya Javayant UNQUALIFIED
Octavia B SergiCanadaIvan Magalhaes PROPOSAL
Chavez T ShinkoJapanBernardo Dominic RENEWAL
Rodrigues U NickaIndiaAnna Fali UNQUALIFIED
Faith O IturbideCanadaIvan Magalhaes RENEWAL
Aika S MaletJapanStephen Shaw QUALIFIED
Faith Y GarufiItalyElwin Sharvill RENEWAL
Morrow Y InouyeIndiaStephen Shaw UNQUALIFIED
Misaki D WieserGermanyAmy Elsner PROPOSAL
Emily G BriddickRussiaAnna Fali NEGOTIATION
Faith C ButtFranceElwin Sharvill NEGOTIATION
Kadeem C CampainFranceXuxue Feng RENEWAL
Jennifer T GillianGermanyXuxue Feng PROPOSAL
Adams X KolmetzRussiaAsiya Javayant PROPOSAL
Darci S CaudyBrazilElwin Sharvill NEGOTIATION
Misaki K VocelkaIndiaIvan Magalhaes UNQUALIFIED
Juan W FollerGermanyIvan Magalhaes RENEWAL
Octavia I BriddickUnited KingdomStephen Shaw NEGOTIATION

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