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
Aditya W ShinkoFranceStephen Shaw NEW
Mujtaba B StockhamFranceAsiya Javayant UNQUALIFIED
Kadeem I FollerJapanAnna Fali PROPOSAL
Leon B SaylorsBrazilStephen Shaw NEGOTIATION
Adams M WaycottJapanBernardo Dominic PROPOSAL
Isabel R OldroydCanadaBernardo Dominic QUALIFIED
Greenwood B ChuiItalyXuxue Feng RENEWAL
Izzy Z VocelkaRussiaAmy Elsner QUALIFIED
Leja Y MacleadGermanyAsiya Javayant UNQUALIFIED
Stacey B ChuiArgentinaOnyama Limba QUALIFIED
Aruna J MaletAustraliaStephen Shaw NEW
Izzy R OstroskyFranceOnyama Limba PROPOSAL
Antonio D MorascaItalyStephen Shaw UNQUALIFIED
Sinclair X NestleRussiaIvan Magalhaes NEW
Leja C RoysterIndiaAsiya Javayant PROPOSAL
Nicolas Y CampainUnited KingdomOnyama Limba RENEWAL
Tony R NestleJapanOnyama Limba NEGOTIATION
Izzy I MaletRussiaXuxue Feng NEGOTIATION
Wickens Z FigeroaCanadaXuxue Feng NEW
Octavia I SchemmerGermanyIoni Bowcher NEW
Faith D IturbideUnited KingdomBernardo Dominic NEW
Mayumi X AmigonCanadaIoni Bowcher PROPOSAL
Chavez I ChuiItalyIvan Magalhaes PROPOSAL
David H KuskoArgentinaBernardo Dominic UNQUALIFIED
Ashley H OldroydJapanBernardo Dominic NEW
Faith V BowleyRussiaBernardo Dominic RENEWAL
Leja U SergiJapanAnna Fali QUALIFIED
Claire V RutaJapanIoni Bowcher UNQUALIFIED
Deepesh Q CaudyFranceXuxue Feng UNQUALIFIED
Darci A ButtJapanAmy Elsner RENEWAL
Silvio X GarufiIndiaXuxue Feng RENEWAL
Sinclair M CampainCanadaElwin Sharvill PROPOSAL
David T FigeroaJapanAnna Fali PROPOSAL
Octavia H WieserJapanAnna Fali PROPOSAL
Juan K KolmetzArgentinaIvan Magalhaes UNQUALIFIED
Kaitlin V OldroydBrazilXuxue Feng NEGOTIATION
Mujtaba Z MorascaIndiaBernardo Dominic NEGOTIATION
Chavez G WieserJapanIoni Bowcher UNQUALIFIED
Sinclair T FerenczBrazilStephen Shaw RENEWAL
Francesco H RoysterItalyAsiya Javayant NEW
David P IturbideGermanyElwin Sharvill RENEWAL
Salvatore P TollnerJapanOnyama Limba UNQUALIFIED
Aruna B WieserFranceAsiya Javayant UNQUALIFIED
Izzy H RoysterArgentinaAmy Elsner RENEWAL
Ashley V KuskoFranceOnyama Limba RENEWAL
Octavia M GillianIndiaXuxue Feng UNQUALIFIED
Wickens B AlbaresIndiaAmy Elsner NEGOTIATION
Mayumi G CampainFranceAsiya Javayant NEGOTIATION
Kadeem D MaletSpainIoni Bowcher NEW
Murillo M GarufiAustraliaOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Sinclair J BriddickUnited KingdomAsiya Javayant UNQUALIFIED
Greenwood N InouyeAustraliaIoni Bowcher PROPOSAL
Ashley R CaldareraSpainIvan Magalhaes NEGOTIATION
Ivar M RoysterSpainAsiya Javayant PROPOSAL
Ricardo H SergiItalyElwin Sharvill UNQUALIFIED
Sinclair G BowleyBrazilIvan Magalhaes UNQUALIFIED
Maria P WhobreyAustraliaBernardo Dominic UNQUALIFIED
Maria X RimItalyBernardo Dominic PROPOSAL
Sinclair J CaudySpainAnna Fali UNQUALIFIED
Johnson J NickaGermanyXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna Y GauchoAustralia2024-05-31Morlong Associates RENEWAL91Asiya Javayant
1001Arvin G AlbaresUnited Kingdom2024-05-24King, Christopher A Esq UNQUALIFIED31Amy Elsner
1002Ivar X OstroskyUnited Kingdom2024-05-31Chanay, Jeffrey A Esq NEGOTIATION23Ivan Magalhaes
1003Aditya L AmigonFrance2024-05-31Feiner Bros UNQUALIFIED32Asiya Javayant
1004Clifford J WhobreyGermany2024-05-17Benton, John B Jr NEW17Ivan Magalhaes
1005Alejandro X DoeArgentina2024-05-21Buckley Miller Wright NEGOTIATION33Anna Fali
1006Leja Y SaylorsUnited Kingdom2024-06-01Rousseaux, Michael Esq RENEWAL81Xuxue Feng
1007Jones X BriddickSpain2024-05-10Chemel, James L Cpa QUALIFIED42Elwin Sharvill
1008Mayumi X CaldareraArgentina2024-05-13Benton, John B Jr UNQUALIFIED17Ivan Magalhaes
1009David Z StensethGermany2024-06-05Morlong Associates RENEWAL0Elwin Sharvill
1010Maria T KolmetzGermany2024-05-25Dorl, James J Esq QUALIFIED75Anna Fali
1011Sinclair Y DoeUnited Kingdom2024-06-02Chanay, Jeffrey A Esq RENEWAL10Amy Elsner
1012Adams L GillianArgentina2024-05-12Chapman, Ross E Esq QUALIFIED45Ioni Bowcher
1013David S GillianGermany2024-05-24Feltz Printing Service RENEWAL26Onyama Limba
1014Chavez B ShinkoAustralia2024-05-25Feltz Printing Service QUALIFIED79Elwin Sharvill
1015Francesco X AmigonJapan2024-06-05Feiner Bros RENEWAL31Stephen Shaw
1016Faith I MacleadUnited Kingdom2024-05-30Morlong Associates QUALIFIED51Onyama Limba
1017Mujtaba H FigeroaFrance2024-05-07Rangoni Of Florence QUALIFIED7Xuxue Feng
1018Mujtaba T PaprockiIndia2024-05-31Commercial Press PROPOSAL26Onyama Limba
1019Tony T DarakjyIndia2024-05-26Truhlar And Truhlar Attys QUALIFIED96Xuxue Feng
1020Jennifer W VenereBrazil2024-06-01Dorl, James J Esq UNQUALIFIED56Anna Fali
1021Jefferson F TollnerJapan2024-05-24Chanay, Jeffrey A Esq NEW63Ivan Magalhaes
1022Alejandro D CampainRussia2024-05-27Buckley Miller Wright NEW40Bernardo Dominic
1023Leja U TollnerCanada2024-05-18Feiner Bros UNQUALIFIED39Bernardo Dominic
1024Maisha B PerinArgentina2024-05-18Morlong Associates QUALIFIED44Xuxue Feng
1025Izzy T CampainItaly2024-05-26Benton, John B Jr QUALIFIED4Bernardo Dominic
1026Jefferson E CampainCanada2024-05-28Morlong Associates QUALIFIED78Asiya Javayant
1027Kadeem P SergiUnited Kingdom2024-05-25Rousseaux, Michael Esq QUALIFIED41Stephen Shaw
1028Costa H BriddickCanada2024-05-27Benton, John B Jr PROPOSAL29Ivan Magalhaes
1029Juan R RimBrazil2024-05-29Buckley Miller Wright RENEWAL37Ivan Magalhaes
1030Salvatore U PerinSpain2024-06-02Rangoni Of Florence NEGOTIATION37Ioni Bowcher
1031Faith R BologniaArgentina2024-05-15Chapman, Ross E Esq QUALIFIED20Elwin Sharvill
1032Salvatore O RoysterBrazil2024-05-11Buckley Miller Wright NEW60Ivan Magalhaes
1033Sinclair O FigeroaBrazil2024-05-18Rangoni Of Florence PROPOSAL7Anna Fali
1034Jennifer X InouyeBrazil2024-05-28Benton, John B Jr NEW97Asiya Javayant
1035Julie M MarrierItaly2024-05-31Morlong Associates UNQUALIFIED41Ivan Magalhaes
1036Francesco R VocelkaFrance2024-05-19Rangoni Of Florence UNQUALIFIED63Bernardo Dominic
1037Jones B PoquetteCanada2024-05-09Rousseaux, Michael Esq RENEWAL74Bernardo Dominic
1038Francesco F ShinkoJapan2024-05-10Buckley Miller Wright UNQUALIFIED15Elwin Sharvill
1039Mujtaba J CaldareraSpain2024-05-15Morlong Associates NEW71Ivan Magalhaes
1040Emily V AmigonUnited Kingdom2024-05-20Commercial Press QUALIFIED6Amy Elsner
1041Cody G InouyeSpain2024-05-22Feltz Printing Service UNQUALIFIED53Amy Elsner
1042Greenwood N KuskoRussia2024-05-27Benton, John B Jr NEW41Stephen Shaw
1043Leon L RutaBrazil2024-05-11Rousseaux, Michael Esq UNQUALIFIED57Onyama Limba
1044Aika J TollnerJapan2024-05-28Printing Dimensions NEGOTIATION38Asiya Javayant
1045Costa H WhobreyIndia2024-05-27Commercial Press UNQUALIFIED81Onyama Limba
1046Octavia M MacleadIndia2024-05-22Truhlar And Truhlar Attys QUALIFIED30Amy Elsner
1047Johnson R MorascaJapan2024-05-27Truhlar And Truhlar Attys UNQUALIFIED30Asiya Javayant
1048Izzy G WhobreyCanada2024-05-12Dorl, James J Esq UNQUALIFIED1Ioni Bowcher
1049Murillo L SchemmerUnited Kingdom2024-05-30Printing Dimensions PROPOSAL4Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Francesco C FigeroaItalyAmy Elsner QUALIFIED
Jeanfrancois N MaletAustraliaIvan Magalhaes QUALIFIED
Leja T SlusarskiSpainIoni Bowcher RENEWAL
Maria L TollnerGermanyAsiya Javayant PROPOSAL
Francesco K InouyeBrazilIoni Bowcher RENEWAL
Juan T MaletRussiaIoni Bowcher RENEWAL
James K DoeFranceElwin Sharvill PROPOSAL
Darci C AlbaresSpainIvan Magalhaes RENEWAL
James K ShinkoFranceStephen Shaw NEGOTIATION
Ivar N DilliardRussiaIvan Magalhaes PROPOSAL
Greenwood P GlickItalyElwin Sharvill NEW
Stacey L BowleyUnited KingdomIoni Bowcher PROPOSAL
Jennifer B DilliardItalyIoni Bowcher PROPOSAL
Faith Z AmigonGermanyAmy Elsner NEGOTIATION
Claire K NickaRussiaAnna Fali NEGOTIATION
Claire O AmigonCanadaOnyama Limba QUALIFIED
Darci V KuskoFranceIoni Bowcher NEW
Aruna O DarakjyIndiaBernardo Dominic QUALIFIED
Adams M PerinUnited KingdomAnna Fali RENEWAL
Murillo R GlickArgentinaElwin Sharvill NEW
Kaitlin E CampainAustraliaAsiya Javayant RENEWAL
Ivar L SaylorsJapanStephen Shaw RENEWAL
Rodrigues C TollnerGermanyElwin Sharvill NEW
Silvio Y DilliardUnited KingdomIoni Bowcher PROPOSAL
Isabel X PerinUnited KingdomXuxue Feng QUALIFIED
Chavez B FerenczSpainAnna Fali UNQUALIFIED
Octavia R FigeroaAustraliaOnyama Limba NEGOTIATION
Octavia V DilliardUnited KingdomXuxue Feng UNQUALIFIED
Emily T CaldareraSpainAnna Fali PROPOSAL
Munro Z AlbaresUnited KingdomBernardo Dominic QUALIFIED
Adams H IturbideItalyAsiya Javayant RENEWAL
Stacey N MaletAustraliaXuxue Feng RENEWAL
Emily T IturbideArgentinaElwin Sharvill NEW
Rodrigues M IturbideItalyOnyama Limba NEW
Claire X ShinkoItalyOnyama Limba PROPOSAL
Antonio N FlosiGermanyElwin Sharvill RENEWAL
Johnson X GillianRussiaElwin Sharvill NEW
Alejandro J MaletAustraliaAnna Fali QUALIFIED
Emily J IturbideCanadaStephen Shaw NEGOTIATION
Juan Z MaletGermanyOnyama Limba RENEWAL
Alejandro D StockhamRussiaIvan Magalhaes RENEWAL
Wickens T DoeRussiaOnyama Limba RENEWAL
Smith C KuskoIndiaElwin Sharvill QUALIFIED
Stacey Y StensethRussiaAnna Fali UNQUALIFIED
Smith B MorascaSpainOnyama Limba QUALIFIED
Leon S PoquetteBrazilIoni Bowcher RENEWAL
Tony U GillianJapanElwin Sharvill QUALIFIED
David B FlosiItalyStephen Shaw RENEWAL
Mayumi V RulapaughUnited KingdomAsiya Javayant NEGOTIATION
Julie O VenereRussiaIoni Bowcher PROPOSAL
Frozen Columns
Name
Wickens N Slusarski
Maisha N Caudy
Leon E Shinko
Aika L Bowley
Maria H Iturbide
Costa Z Kusko
Kaitlin R Marrier
James Y Darakjy
Octavia T Glick
Salvatore I Rim
Julie M Slusarski
Claire W Paprocki
Maria V Wieser
Tony I Kusko
Kadeem X Venere
Mujtaba Q Flosi
Sinclair Y Briddick
Ivar T Bowley
Mayumi B Briddick
Jones N Ostrosky
Johnson B Sergi
Johnson X Darakjy
Tony J Rim
Jefferson S Vocelka
Ashley L Morasca
Isabel E Oldroyd
Maisha T Tollner
Chavez A Caudy
Mayumi C Kolmetz
Morrow Y Stockham
Ivar I Stenseth
Claire Y Malet
Jefferson M Garufi
Nicolas G Bolognia
Smith I Marrier
Munro S Rim
Leja D Rim
Salvatore G Flosi
Leja Z Ferencz
Deepesh J Shinko
James K Oldroyd
Jeanfrancois G Gaucho
Leja Y Inouye
Aika F Kusko
Deepesh H Ferencz
Jones T Gillian
Costa X Maclead
Clifford J Paprocki
James G Maclead
Leja E Schemmer
IdCountryDate
1000France2024-05-21
1001Germany2024-05-29
1002United Kingdom2024-05-24
1003France2024-05-26
1004Germany2024-05-31
1005Argentina2024-06-05
1006United Kingdom2024-05-07
1007Argentina2024-06-02
1008Canada2024-06-02
1009India2024-05-11
1010France2024-06-03
1011India2024-06-01
1012Canada2024-05-31
1013Australia2024-05-31
1014Italy2024-05-09
1015Italy2024-05-25
1016Japan2024-06-01
1017Argentina2024-06-02
1018France2024-05-16
1019United Kingdom2024-05-21
1020France2024-05-24
1021Argentina2024-06-04
1022Brazil2024-06-04
1023Japan2024-06-02
1024Argentina2024-05-27
1025Canada2024-05-26
1026Argentina2024-05-25
1027Russia2024-05-12
1028Spain2024-05-30
1029Italy2024-05-14
1030Australia2024-05-21
1031France2024-05-30
1032Germany2024-06-02
1033Canada2024-06-05
1034Brazil2024-05-21
1035Spain2024-05-29
1036Argentina2024-06-02
1037Russia2024-05-10
1038United Kingdom2024-05-23
1039Argentina2024-06-01
1040Brazil2024-05-15
1041France2024-05-16
1042Russia2024-05-07
1043Brazil2024-05-19
1044Germany2024-06-01
1045France2024-05-25
1046Japan2024-05-09
1047Russia2024-06-03
1048Spain2024-05-15
1049Russia2024-05-31

On-Demand Data

NameIdCountryDate
Julie S Vocelka1000Germany2024-05-09
Salvatore D Tollner1001India2024-05-09
Darci B Rim1002Italy2024-05-07
Salvatore A Gaucho1003United Kingdom2024-05-13
Juan X Gaucho1004India2024-05-26
Cody L Caudy1005Australia2024-05-16
Salvatore M Rim1006Germany2024-05-12
Jeanfrancois T Garufi1007Japan2024-05-16
Mujtaba Y Waycott1008France2024-05-10
Murillo K Maclead1009United Kingdom2024-05-24
Deepesh I Iturbide1010France2024-05-29
Mujtaba J Iturbide1011Brazil2024-05-24
Nicolas Y Flosi1012Argentina2024-05-20
Julie G Stockham1013Germany2024-05-31
Octavia H Waycott1014Canada2024-05-13
Smith Y Doe1015Spain2024-05-11
Wickens F Chui1016Russia2024-05-19
Ashley J Gaucho1017Canada2024-05-21
Chavez I Flosi1018Brazil2024-06-05
Kaitlin V Butt1019Argentina2024-05-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith O MarrierFranceBernardo Dominic PROPOSAL
Sinclair F VocelkaItalyElwin Sharvill UNQUALIFIED
Mujtaba X FigeroaCanadaElwin Sharvill UNQUALIFIED
Nicolas H FlosiSpainOnyama Limba QUALIFIED
Aditya B GarufiBrazilXuxue Feng UNQUALIFIED
Ivar K NickaIndiaIvan Magalhaes QUALIFIED
Izzy C GauchoRussiaAnna Fali RENEWAL
Nicolas J SchemmerAustraliaOnyama Limba RENEWAL
James H CaldareraBrazilBernardo Dominic PROPOSAL
Ivar P FlosiSpainElwin Sharvill NEGOTIATION
Jones F MaletJapanStephen Shaw NEGOTIATION
Juan K MorascaJapanAsiya Javayant NEW
Aruna P DarakjyItalyElwin Sharvill RENEWAL
Julie W BriddickCanadaAnna Fali NEGOTIATION
Misaki B DarakjyItalyStephen Shaw PROPOSAL
Maria F BriddickAustraliaAnna Fali NEGOTIATION
Cody X PerinBrazilElwin Sharvill RENEWAL
Munro A FlosiUnited KingdomAsiya Javayant QUALIFIED
Alejandro U StensethFranceStephen Shaw PROPOSAL
Morrow L CampainRussiaIvan Magalhaes PROPOSAL
Octavia K MaletIndiaIoni Bowcher NEW
Rodrigues D WaycottItalyAsiya Javayant NEW
Julie Y CaldareraAustraliaXuxue Feng PROPOSAL
Smith T VocelkaBrazilBernardo Dominic UNQUALIFIED
Smith C CaldareraGermanyBernardo Dominic PROPOSAL
Arvin H OstroskyCanadaElwin Sharvill UNQUALIFIED
Francesco J RulapaughFranceStephen Shaw NEGOTIATION
Mujtaba H WieserGermanyStephen Shaw QUALIFIED
Adams J DilliardUnited KingdomAmy Elsner NEGOTIATION
Aditya L RimItalyStephen Shaw PROPOSAL
Izzy R PerinRussiaAsiya Javayant NEW
Morrow K CaudyItalyAsiya Javayant NEGOTIATION
Kaitlin E VocelkaRussiaBernardo Dominic NEW
Misaki L MorascaRussiaXuxue Feng NEGOTIATION
Leon N DoeUnited KingdomAsiya Javayant RENEWAL
Munro R SergiUnited KingdomAmy Elsner NEGOTIATION
Darci V AmigonItalyIoni Bowcher QUALIFIED
Faith O GillianRussiaAsiya Javayant PROPOSAL
Isabel K SchemmerFranceIvan Magalhaes QUALIFIED
David G OldroydGermanyElwin Sharvill NEW

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