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
Munro O GillianRussiaOnyama Limba RENEWAL
David M OldroydCanadaIoni Bowcher NEGOTIATION
Aika O DarakjyAustraliaBernardo Dominic NEGOTIATION
Isabel Z DilliardFranceAsiya Javayant PROPOSAL
David S FlosiFranceAmy Elsner QUALIFIED
Murillo F MarrierAustraliaOnyama Limba PROPOSAL
Darci C GauchoJapanStephen Shaw QUALIFIED
Smith Y ShinkoRussiaAnna Fali NEW
Jeanfrancois K FerenczIndiaElwin Sharvill UNQUALIFIED
Arvin T OldroydArgentinaBernardo Dominic PROPOSAL
Jeanfrancois S CaudyBrazilXuxue Feng QUALIFIED
Octavia I TollnerCanadaAmy Elsner PROPOSAL
Claire U StockhamAustraliaAmy Elsner RENEWAL
Kaitlin V FigeroaCanadaIvan Magalhaes QUALIFIED
Darci I CaudyCanadaBernardo Dominic RENEWAL
Clifford U BologniaJapanOnyama Limba PROPOSAL
Faith F FollerCanadaXuxue Feng UNQUALIFIED
Aditya L KuskoIndiaBernardo Dominic NEW
Aditya I AlbaresJapanAnna Fali RENEWAL
Faith L NestleCanadaXuxue Feng NEW
Tony U GarufiItalyAnna Fali NEW
Leja X NestleBrazilElwin Sharvill QUALIFIED
Chavez M FlosiSpainAsiya Javayant NEW
Chavez I KolmetzSpainAsiya Javayant PROPOSAL
Smith A SaylorsUnited KingdomStephen Shaw RENEWAL
Mayumi K GauchoItalyAnna Fali NEGOTIATION
Jeanfrancois K ButtCanadaOnyama Limba UNQUALIFIED
Tony J MorascaBrazilXuxue Feng NEW
Mujtaba F MaletArgentinaOnyama Limba RENEWAL
Jennifer V WhobreyUnited KingdomElwin Sharvill NEW
Jefferson R DoeIndiaStephen Shaw NEGOTIATION
Stacey G VenereCanadaBernardo Dominic UNQUALIFIED
Mujtaba I CaudyFranceElwin Sharvill PROPOSAL
Ivar W RoysterAustraliaAnna Fali UNQUALIFIED
Claire A FollerArgentinaIoni Bowcher QUALIFIED
Chavez V RoysterUnited KingdomBernardo Dominic QUALIFIED
Ricardo K CaldareraRussiaAmy Elsner QUALIFIED
James S WieserFranceXuxue Feng UNQUALIFIED
Alejandro E IturbideIndiaXuxue Feng RENEWAL
Isabel G TollnerFranceIvan Magalhaes QUALIFIED
Wickens V VenereJapanOnyama Limba QUALIFIED
Ashley P NickaUnited KingdomAnna Fali PROPOSAL
Smith P RulapaughArgentinaXuxue Feng PROPOSAL
Octavia D FlosiSpainElwin Sharvill PROPOSAL
David G WhobreyAustraliaIoni Bowcher RENEWAL
Munro H CampainRussiaStephen Shaw NEW
Costa T StensethUnited KingdomAsiya Javayant RENEWAL
Ivar B MorascaCanadaStephen Shaw RENEWAL
Murillo U FerenczFranceStephen Shaw QUALIFIED
Misaki L CampainUnited KingdomAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Faith F OldroydUnited KingdomIvan Magalhaes NEGOTIATION
Aditya L MaletSpainIvan Magalhaes RENEWAL
David R BologniaJapanBernardo Dominic NEW
Rodrigues O ChuiSpainStephen Shaw PROPOSAL
Isabel F SaylorsUnited KingdomAsiya Javayant NEW
Maisha B NickaIndiaAnna Fali UNQUALIFIED
Izzy R FlosiAustraliaIoni Bowcher QUALIFIED
Jones O PaprockiUnited KingdomIvan Magalhaes QUALIFIED
Julie M CaldareraJapanOnyama Limba PROPOSAL
Juan R BriddickSpainElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel W ButtUnited Kingdom2024-09-16Truhlar And Truhlar Attys NEGOTIATION95Onyama Limba
1001Maria G DilliardBrazil2024-09-04Morlong Associates NEW46Stephen Shaw
1002Claire Z PaprockiBrazil2024-08-30Chapman, Ross E Esq RENEWAL34Bernardo Dominic
1003Isabel S KolmetzCanada2024-09-04Commercial Press PROPOSAL32Amy Elsner
1004Mujtaba Y DilliardSpain2024-09-10Chanay, Jeffrey A Esq RENEWAL65Bernardo Dominic
1005Adams K GauchoBrazil2024-09-17Chanay, Jeffrey A Esq UNQUALIFIED94Xuxue Feng
1006Jefferson F GillianAustralia2024-09-10Commercial Press PROPOSAL61Bernardo Dominic
1007Stacey Q FlosiAustralia2024-09-15Rousseaux, Michael Esq NEW45Onyama Limba
1008Johnson H FlosiJapan2024-09-02Chapman, Ross E Esq QUALIFIED26Onyama Limba
1009Sinclair Q RimRussia2024-09-13King, Christopher A Esq RENEWAL69Elwin Sharvill
1010Tony G SlusarskiCanada2024-09-19Rangoni Of Florence NEGOTIATION83Onyama Limba
1011Alejandro U RoysterArgentina2024-08-29Chemel, James L Cpa PROPOSAL10Ivan Magalhaes
1012Jeanfrancois J RulapaughItaly2024-09-05Printing Dimensions PROPOSAL84Amy Elsner
1013Leja K OstroskyJapan2024-09-04Feltz Printing Service QUALIFIED70Onyama Limba
1014Clifford R TollnerAustralia2024-09-08Chanay, Jeffrey A Esq NEGOTIATION96Bernardo Dominic
1015James R DarakjyFrance2024-09-06Benton, John B Jr NEW13Asiya Javayant
1016Costa W FerenczBrazil2024-08-27Feiner Bros QUALIFIED57Xuxue Feng
1017Smith M FlosiAustralia2024-09-07Dorl, James J Esq NEGOTIATION26Xuxue Feng
1018Francesco F DarakjyAustralia2024-09-21Commercial Press NEGOTIATION2Anna Fali
1019Clifford F SaylorsGermany2024-09-22Chapman, Ross E Esq QUALIFIED52Ioni Bowcher
1020Nicolas A BowleyCanada2024-09-05Feltz Printing Service NEGOTIATION45Anna Fali
1021Maria F CaldareraUnited Kingdom2024-09-24Rangoni Of Florence UNQUALIFIED36Ioni Bowcher
1022Clifford L GillianCanada2024-09-20Rousseaux, Michael Esq NEW52Amy Elsner
1023Octavia D RulapaughUnited Kingdom2024-09-14Commercial Press NEGOTIATION61Onyama Limba
1024Emily L ButtArgentina2024-09-10Printing Dimensions QUALIFIED34Stephen Shaw
1025Kadeem S MacleadIndia2024-09-01Chemel, James L Cpa UNQUALIFIED83Anna Fali
1026Juan Q CaldareraCanada2024-09-10King, Christopher A Esq PROPOSAL5Bernardo Dominic
1027Isabel X FigeroaGermany2024-09-03Buckley Miller Wright NEW68Asiya Javayant
1028Costa C RoysterItaly2024-08-28Feiner Bros NEGOTIATION31Xuxue Feng
1029Jennifer H InouyeItaly2024-09-09Feiner Bros QUALIFIED87Bernardo Dominic
1030Aditya N RoysterGermany2024-09-22Morlong Associates UNQUALIFIED32Amy Elsner
1031Murillo C PaprockiGermany2024-09-24Commercial Press UNQUALIFIED23Bernardo Dominic
1032Mujtaba Z CaudyArgentina2024-08-28Morlong Associates QUALIFIED66Amy Elsner
1033Leon H CampainJapan2024-09-22Printing Dimensions QUALIFIED99Elwin Sharvill
1034Julie M WaycottSpain2024-09-10Feltz Printing Service NEGOTIATION93Elwin Sharvill
1035Cody K SchemmerRussia2024-09-24Feltz Printing Service NEW58Xuxue Feng
1036Antonio B CaldareraFrance2024-09-24Chanay, Jeffrey A Esq UNQUALIFIED43Ivan Magalhaes
1037Jones C DoeUnited Kingdom2024-09-07King, Christopher A Esq NEW39Stephen Shaw
1038David U FollerUnited Kingdom2024-09-19Truhlar And Truhlar Attys RENEWAL25Asiya Javayant
1039Aditya X PaprockiBrazil2024-09-09Morlong Associates NEW98Onyama Limba
1040Izzy N GauchoGermany2024-09-23Printing Dimensions UNQUALIFIED95Stephen Shaw
1041Chavez K VenereJapan2024-09-10Benton, John B Jr RENEWAL19Elwin Sharvill
1042Cody U WaycottSpain2024-09-10Feltz Printing Service UNQUALIFIED86Anna Fali
1043Smith I WaycottSpain2024-09-05Dorl, James J Esq NEGOTIATION4Anna Fali
1044Chavez Y TollnerJapan2024-08-31Morlong Associates UNQUALIFIED88Bernardo Dominic
1045Chavez C VenereIndia2024-09-15Feiner Bros PROPOSAL88Asiya Javayant
1046Misaki U WaycottCanada2024-09-15Morlong Associates UNQUALIFIED61Bernardo Dominic
1047Ashley D FlosiBrazil2024-09-24Truhlar And Truhlar Attys NEW25Xuxue Feng
1048Costa U FlosiArgentina2024-09-19Benton, John B Jr PROPOSAL57Stephen Shaw
1049Sinclair Q StensethJapan2024-09-14Chemel, James L Cpa QUALIFIED0Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Tony T StensethRussiaIoni Bowcher RENEWAL
Greenwood B WaycottCanadaAsiya Javayant RENEWAL
Deepesh B InouyeGermanyIvan Magalhaes NEW
Darci K RulapaughBrazilIvan Magalhaes NEGOTIATION
Costa L CaldareraCanadaAsiya Javayant NEGOTIATION
Arvin E CaudySpainAmy Elsner QUALIFIED
Greenwood M GauchoFranceAmy Elsner QUALIFIED
Johnson E DarakjyBrazilElwin Sharvill NEGOTIATION
Arvin P SaylorsSpainBernardo Dominic UNQUALIFIED
Nicolas Y SaylorsBrazilAnna Fali RENEWAL
Clifford J IturbideCanadaIoni Bowcher RENEWAL
Jeanfrancois F StockhamBrazilAnna Fali UNQUALIFIED
Julie X MorascaJapanAsiya Javayant PROPOSAL
Chavez P GillianBrazilXuxue Feng RENEWAL
Johnson A GlickItalyIoni Bowcher PROPOSAL
Juan L NestleIndiaOnyama Limba NEW
Greenwood W VocelkaJapanBernardo Dominic RENEWAL
Ashley O GauchoRussiaStephen Shaw PROPOSAL
Izzy R GillianGermanyAmy Elsner NEW
Antonio X ChuiIndiaIoni Bowcher PROPOSAL
Claire V BologniaUnited KingdomXuxue Feng PROPOSAL
Maria Q FollerBrazilStephen Shaw NEW
Arvin X DarakjyCanadaOnyama Limba PROPOSAL
Octavia X DilliardIndiaBernardo Dominic UNQUALIFIED
Ricardo F WieserBrazilOnyama Limba UNQUALIFIED
Maisha L GlickRussiaBernardo Dominic RENEWAL
Chavez G BowleyUnited KingdomOnyama Limba NEGOTIATION
Chavez I MaletItalyStephen Shaw NEW
Deepesh P GarufiJapanAsiya Javayant NEW
Chavez R DarakjyArgentinaIvan Magalhaes QUALIFIED
Emily P ButtJapanBernardo Dominic QUALIFIED
James F RutaArgentinaBernardo Dominic QUALIFIED
Darci L IturbideBrazilOnyama Limba PROPOSAL
Claire N StensethIndiaIvan Magalhaes NEGOTIATION
Aruna M RulapaughItalyIoni Bowcher UNQUALIFIED
Kaitlin A DarakjyGermanyAnna Fali NEGOTIATION
Kadeem A SlusarskiCanadaAmy Elsner UNQUALIFIED
Leon L TollnerAustraliaIoni Bowcher NEGOTIATION
James X GillianSpainXuxue Feng UNQUALIFIED
Faith Y FerenczSpainIoni Bowcher RENEWAL
Leja P AlbaresIndiaElwin Sharvill NEW
Mayumi K MarrierUnited KingdomStephen Shaw UNQUALIFIED
Stacey G FerenczUnited KingdomOnyama Limba RENEWAL
Francesco R KuskoUnited KingdomXuxue Feng NEW
Octavia S BowleyItalyAmy Elsner QUALIFIED
Isabel A GauchoUnited KingdomOnyama Limba NEW
Ashley Q WaycottAustraliaAsiya Javayant UNQUALIFIED
Aruna Q PoquetteUnited KingdomElwin Sharvill NEGOTIATION
Nicolas H WaycottArgentinaAsiya Javayant QUALIFIED
Greenwood A KuskoCanadaStephen Shaw RENEWAL
Frozen Columns
Name
Kadeem J Gaucho
Jefferson B Stockham
Ricardo U Kolmetz
Mayumi W Chui
Clifford X Kusko
Ricardo K Rulapaugh
Munro E Oldroyd
Antonio O Tollner
Jefferson L Marrier
Stacey W Butt
Ashley F Briddick
Tony P Marrier
Adams R Waycott
Maisha W Darakjy
Tony G Slusarski
Ricardo B Saylors
Isabel A Shinko
Greenwood H Slusarski
Sinclair O Doe
Octavia D Butt
Jennifer A Kusko
Jones M Malet
Wickens N Bowley
Tony D Iturbide
Adams F Gaucho
Francesco U Marrier
Maria T Malet
Aruna P Marrier
Nicolas Q Venere
Greenwood O Ruta
Clifford C Marrier
James R Rim
Claire A Stenseth
Munro D Ferencz
James G Ostrosky
Maria R Shinko
Alejandro V Stockham
Ricardo I Garufi
Morrow P Inouye
Izzy N Morasca
Jefferson N Figeroa
Maria L Inouye
Jefferson M Shinko
Francesco Q Shinko
Kaitlin Y Nestle
Arvin P Butt
Adams S Slusarski
Arvin U Nestle
Deepesh B Garufi
Sinclair A Glick
IdCountryDate
1000France2024-09-13
1001Russia2024-09-16
1002France2024-08-27
1003Russia2024-08-26
1004Japan2024-09-12
1005India2024-09-05
1006Russia2024-09-16
1007France2024-09-05
1008Italy2024-09-16
1009Canada2024-08-26
1010Germany2024-08-27
1011Australia2024-08-30
1012India2024-09-06
1013Brazil2024-09-18
1014Argentina2024-09-13
1015India2024-09-18
1016Argentina2024-09-06
1017Australia2024-09-12
1018France2024-09-10
1019Australia2024-09-21
1020Italy2024-08-29
1021Germany2024-09-13
1022Russia2024-08-29
1023Spain2024-09-24
1024Brazil2024-09-14
1025Russia2024-09-15
1026India2024-09-13
1027Argentina2024-09-20
1028Brazil2024-09-09
1029United Kingdom2024-09-03
1030Australia2024-09-15
1031India2024-09-10
1032France2024-09-17
1033Russia2024-09-19
1034Argentina2024-09-13
1035India2024-09-05
1036Japan2024-09-05
1037Spain2024-09-09
1038Argentina2024-08-29
1039Russia2024-09-14
1040Argentina2024-09-18
1041Spain2024-09-05
1042Germany2024-09-21
1043Russia2024-08-31
1044Japan2024-09-02
1045Canada2024-09-14
1046India2024-08-31
1047United Kingdom2024-09-17
1048France2024-09-13
1049Australia2024-09-19

On-Demand Data

NameIdCountryDate
Antonio O Ostrosky1000India2024-09-22
Kadeem N Bowley1001Canada2024-09-20
Ricardo W Glick1002Spain2024-09-05
Cody W Butt1003India2024-08-26
Jefferson Y Slusarski1004Italy2024-09-19
Darci F Gaucho1005Australia2024-09-01
Greenwood E Amigon1006Russia2024-09-08
Misaki V Ostrosky1007Australia2024-09-01
Aruna W Kolmetz1008Brazil2024-09-15
Claire A Morasca1009Spain2024-09-12
Mayumi D Bowley1010Japan2024-09-11
Jones V Waycott1011Spain2024-09-08
Antonio O Nestle1012India2024-09-08
Chavez Q Saylors1013India2024-08-30
Julie O Gillian1014Spain2024-08-29
Leon T Ostrosky1015Canada2024-09-17
James U Iturbide1016Spain2024-09-20
Murillo Y Oldroyd1017Italy2024-09-16
Ricardo Q Waycott1018Germany2024-09-21
Kadeem V Oldroyd1019India2024-09-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Silvio W GlickJapanStephen Shaw QUALIFIED
Wickens O FlosiGermanyBernardo Dominic NEW
Maria Y MaletSpainIoni Bowcher QUALIFIED
James R FlosiBrazilStephen Shaw NEW
Aruna P FigeroaGermanyIoni Bowcher UNQUALIFIED
Silvio H FlosiGermanyElwin Sharvill PROPOSAL
Chavez C MaletIndiaIvan Magalhaes QUALIFIED
Kaitlin M OstroskySpainStephen Shaw PROPOSAL
Deepesh D VocelkaUnited KingdomAsiya Javayant UNQUALIFIED
Misaki L SlusarskiArgentinaXuxue Feng NEGOTIATION
Deepesh G FollerGermanyAnna Fali QUALIFIED
Emily N NickaItalyAnna Fali QUALIFIED
Antonio L PoquetteBrazilElwin Sharvill UNQUALIFIED
Johnson D SlusarskiFranceBernardo Dominic RENEWAL
Claire N ButtSpainElwin Sharvill QUALIFIED
Aruna B OldroydUnited KingdomElwin Sharvill NEGOTIATION
Salvatore Z GlickIndiaElwin Sharvill QUALIFIED
Izzy V GarufiGermanyAnna Fali RENEWAL
Nicolas V NestleItalyAsiya Javayant NEW
David H PerinUnited KingdomAmy Elsner QUALIFIED
Johnson E GauchoRussiaIvan Magalhaes QUALIFIED
Wickens F TollnerGermanyAsiya Javayant QUALIFIED
Clifford U FlosiBrazilAmy Elsner NEW
Chavez A DarakjySpainAmy Elsner NEGOTIATION
Leon A MacleadRussiaIoni Bowcher NEW
James H SchemmerFranceXuxue Feng RENEWAL
Claire P FlosiArgentinaAmy Elsner RENEWAL
Emily A SchemmerGermanyIoni Bowcher UNQUALIFIED
Jeanfrancois E ButtCanadaXuxue Feng RENEWAL
Maisha Z VenereBrazilIvan Magalhaes NEGOTIATION
Tony D WieserItalyAmy Elsner QUALIFIED
Jefferson K GillianRussiaElwin Sharvill PROPOSAL
Stacey E MaletArgentinaStephen Shaw QUALIFIED
Sinclair M GauchoAustraliaElwin Sharvill QUALIFIED
Rodrigues P VocelkaJapanXuxue Feng NEW
Izzy A MacleadUnited KingdomAsiya Javayant NEW
Morrow D PerinAustraliaStephen Shaw UNQUALIFIED
Ashley Q KolmetzUnited KingdomElwin Sharvill NEW
Ivar E SchemmerItalyAsiya Javayant PROPOSAL
Jones J GarufiCanadaBernardo Dominic QUALIFIED

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