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
Juan M PoquetteIndiaIoni Bowcher RENEWAL
Johnson M ShinkoFranceOnyama Limba NEW
Deepesh Z ChuiIndiaAmy Elsner PROPOSAL
Juan R VocelkaItalyAsiya Javayant QUALIFIED
Isabel R AlbaresArgentinaAsiya Javayant NEW
Misaki O AmigonFranceOnyama Limba RENEWAL
Aruna D OldroydGermanyAsiya Javayant QUALIFIED
Francesco M PoquetteRussiaAmy Elsner QUALIFIED
Munro H AlbaresItalyAsiya Javayant PROPOSAL
Leja C DilliardFranceAmy Elsner PROPOSAL
Octavia D WieserCanadaAmy Elsner UNQUALIFIED
Silvio J RutaRussiaBernardo Dominic RENEWAL
Cody T SlusarskiCanadaAsiya Javayant NEGOTIATION
Jefferson P SchemmerSpainAnna Fali PROPOSAL
Mayumi M RutaJapanBernardo Dominic NEGOTIATION
Darci Z PaprockiSpainIvan Magalhaes NEW
Silvio Q FollerJapanAmy Elsner QUALIFIED
Munro H GlickArgentinaIvan Magalhaes PROPOSAL
Johnson O KolmetzItalyBernardo Dominic UNQUALIFIED
Adams Z RimUnited KingdomAsiya Javayant NEGOTIATION
Misaki K AmigonUnited KingdomAsiya Javayant QUALIFIED
Jeanfrancois W SchemmerBrazilStephen Shaw PROPOSAL
Octavia M StockhamGermanyIvan Magalhaes NEGOTIATION
Mayumi U GauchoUnited KingdomStephen Shaw PROPOSAL
Jefferson W MarrierJapanAsiya Javayant NEGOTIATION
Alejandro V DarakjyArgentinaXuxue Feng NEW
Sinclair C IturbideItalyIoni Bowcher NEGOTIATION
Ashley O FollerCanadaXuxue Feng PROPOSAL
Maisha W DarakjyArgentinaIoni Bowcher PROPOSAL
David Y VocelkaIndiaIoni Bowcher PROPOSAL
Mujtaba K KuskoFranceAnna Fali UNQUALIFIED
Costa M OldroydGermanyXuxue Feng PROPOSAL
Kadeem V VenereCanadaAnna Fali NEW
Isabel W SlusarskiUnited KingdomIoni Bowcher NEW
Jones B RoysterUnited KingdomStephen Shaw PROPOSAL
Jefferson E SergiUnited KingdomStephen Shaw QUALIFIED
Juan R MaletItalyXuxue Feng QUALIFIED
Jones S MaletArgentinaElwin Sharvill QUALIFIED
Isabel E KuskoCanadaBernardo Dominic UNQUALIFIED
Claire N KuskoIndiaXuxue Feng UNQUALIFIED
Aditya Y FerenczRussiaIvan Magalhaes UNQUALIFIED
Aditya B PaprockiArgentinaStephen Shaw PROPOSAL
Aditya Z WhobreyIndiaIoni Bowcher RENEWAL
Jeanfrancois T WhobreyIndiaOnyama Limba NEW
Izzy S InouyeGermanyIoni Bowcher QUALIFIED
Darci O FollerRussiaXuxue Feng PROPOSAL
Emily V KuskoFranceAsiya Javayant NEW
Aruna O VocelkaArgentinaElwin Sharvill QUALIFIED
Leja N NickaIndiaIoni Bowcher NEGOTIATION
Murillo J PerinSpainIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leon H DarakjyIndiaAmy Elsner UNQUALIFIED
Misaki H BriddickUnited KingdomXuxue Feng QUALIFIED
Jones M SaylorsSpainXuxue Feng NEGOTIATION
David A GlickItalyOnyama Limba PROPOSAL
Munro Q ButtUnited KingdomAsiya Javayant NEGOTIATION
Jones R StensethCanadaAnna Fali RENEWAL
Jennifer Q BriddickRussiaOnyama Limba QUALIFIED
Jones W DoeUnited KingdomIoni Bowcher RENEWAL
Sinclair V MacleadArgentinaElwin Sharvill RENEWAL
Rodrigues K KuskoBrazilIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood M OstroskyBrazil2024-05-09Printing Dimensions RENEWAL34Ivan Magalhaes
1001Ricardo Q RoysterBrazil2024-05-02Chanay, Jeffrey A Esq UNQUALIFIED11Amy Elsner
1002James Q WaycottBrazil2024-05-21Benton, John B Jr PROPOSAL16Anna Fali
1003Alejandro I NickaItaly2024-04-29Dorl, James J Esq QUALIFIED50Stephen Shaw
1004Juan C BowleyJapan2024-05-18Printing Dimensions QUALIFIED42Ivan Magalhaes
1005Mujtaba M AmigonFrance2024-05-23Morlong Associates NEGOTIATION99Bernardo Dominic
1006Deepesh K RoysterCanada2024-05-13Rousseaux, Michael Esq RENEWAL63Ioni Bowcher
1007Nicolas P MaletGermany2024-05-01Truhlar And Truhlar Attys RENEWAL56Xuxue Feng
1008Maria A FlosiGermany2024-05-06Feltz Printing Service QUALIFIED17Stephen Shaw
1009Juan A AmigonFrance2024-05-14Dorl, James J Esq QUALIFIED58Ioni Bowcher
1010Julie F BriddickArgentina2024-05-01Dorl, James J Esq NEGOTIATION9Ioni Bowcher
1011Chavez D SaylorsIndia2024-05-21Rousseaux, Michael Esq NEW43Amy Elsner
1012Jeanfrancois A DilliardArgentina2024-05-05Chapman, Ross E Esq NEW61Ivan Magalhaes
1013Morrow Q RutaFrance2024-05-08Benton, John B Jr NEGOTIATION99Ioni Bowcher
1014Ashley T WieserRussia2024-05-13King, Christopher A Esq RENEWAL10Stephen Shaw
1015James R KuskoUnited Kingdom2024-05-07Rangoni Of Florence NEGOTIATION58Bernardo Dominic
1016Smith P VenereSpain2024-05-09Benton, John B Jr NEW57Asiya Javayant
1017Octavia N StockhamJapan2024-04-29Rangoni Of Florence QUALIFIED66Elwin Sharvill
1018Cody R OldroydFrance2024-05-17Dorl, James J Esq PROPOSAL9Ivan Magalhaes
1019Morrow V RimAustralia2024-05-07Benton, John B Jr UNQUALIFIED81Anna Fali
1020Morrow O GlickIndia2024-05-24Buckley Miller Wright PROPOSAL41Elwin Sharvill
1021Octavia T AmigonUnited Kingdom2024-05-03Buckley Miller Wright RENEWAL96Anna Fali
1022Rodrigues N DarakjySpain2024-05-26Commercial Press QUALIFIED99Anna Fali
1023Aditya G InouyeArgentina2024-05-20Feltz Printing Service RENEWAL76Elwin Sharvill
1024Aruna X OldroydBrazil2024-05-19King, Christopher A Esq UNQUALIFIED33Bernardo Dominic
1025Murillo V BologniaIndia2024-05-19Chemel, James L Cpa RENEWAL22Xuxue Feng
1026Clifford M NestleArgentina2024-05-01Morlong Associates NEW66Bernardo Dominic
1027Clifford F NestleArgentina2024-05-09Truhlar And Truhlar Attys NEW43Onyama Limba
1028Misaki Q NickaItaly2024-04-28Benton, John B Jr UNQUALIFIED39Ivan Magalhaes
1029Darci K StockhamCanada2024-05-16Truhlar And Truhlar Attys RENEWAL46Ivan Magalhaes
1030Kaitlin U GillianCanada2024-04-29Truhlar And Truhlar Attys NEW31Bernardo Dominic
1031Kaitlin X AlbaresUnited Kingdom2024-04-28Truhlar And Truhlar Attys NEGOTIATION97Elwin Sharvill
1032Cody N ButtAustralia2024-05-21Morlong Associates UNQUALIFIED11Ivan Magalhaes
1033Jones J GillianRussia2024-05-18Benton, John B Jr RENEWAL90Amy Elsner
1034Jones L GillianIndia2024-05-10Dorl, James J Esq NEGOTIATION70Amy Elsner
1035Wickens R FlosiSpain2024-05-14Printing Dimensions PROPOSAL89Ioni Bowcher
1036Ivar Q DilliardCanada2024-05-01Truhlar And Truhlar Attys NEW13Onyama Limba
1037Claire S VenereFrance2024-05-09Morlong Associates QUALIFIED52Onyama Limba
1038Claire S NestleRussia2024-05-22Chanay, Jeffrey A Esq PROPOSAL88Ivan Magalhaes
1039Francesco H GlickRussia2024-05-11Buckley Miller Wright QUALIFIED91Xuxue Feng
1040Isabel F CaldareraBrazil2024-05-14Truhlar And Truhlar Attys NEW9Stephen Shaw
1041Salvatore P OldroydArgentina2024-05-05Printing Dimensions UNQUALIFIED90Stephen Shaw
1042Arvin W NickaCanada2024-04-28Chanay, Jeffrey A Esq PROPOSAL35Stephen Shaw
1043Izzy B GlickCanada2024-05-06Commercial Press QUALIFIED41Ioni Bowcher
1044Ivar V AlbaresSpain2024-05-01Dorl, James J Esq RENEWAL84Stephen Shaw
1045Claire F GlickArgentina2024-04-28Printing Dimensions PROPOSAL78Xuxue Feng
1046Sinclair J NestleGermany2024-05-13King, Christopher A Esq QUALIFIED42Ivan Magalhaes
1047Alejandro B SaylorsSpain2024-05-22King, Christopher A Esq NEGOTIATION25Anna Fali
1048James M MacleadSpain2024-05-21Truhlar And Truhlar Attys RENEWAL20Xuxue Feng
1049Mayumi D AlbaresGermany2024-05-19Feltz Printing Service NEW51Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
David W MorascaAustraliaAmy Elsner RENEWAL
James T ChuiGermanyStephen Shaw UNQUALIFIED
Murillo I PaprockiIndiaOnyama Limba UNQUALIFIED
David K OldroydUnited KingdomAnna Fali QUALIFIED
Emily H ShinkoArgentinaAnna Fali NEGOTIATION
Rodrigues F NestleArgentinaXuxue Feng PROPOSAL
Adams O InouyeAustraliaElwin Sharvill RENEWAL
Alejandro V DilliardItalyAnna Fali UNQUALIFIED
Faith S BowleyFranceAmy Elsner QUALIFIED
Antonio P BologniaFranceStephen Shaw PROPOSAL
Stacey Z MorascaIndiaOnyama Limba NEW
Johnson K KuskoFranceAnna Fali NEGOTIATION
Leja B OstroskyFranceIvan Magalhaes UNQUALIFIED
Aika R FerenczGermanyOnyama Limba NEGOTIATION
Ricardo B SergiIndiaIvan Magalhaes NEGOTIATION
Darci Z PerinAustraliaXuxue Feng PROPOSAL
Mayumi H WhobreyJapanBernardo Dominic NEW
Julie U RoysterUnited KingdomAnna Fali RENEWAL
Murillo X WhobreyBrazilIoni Bowcher PROPOSAL
Tony Q MacleadJapanElwin Sharvill RENEWAL
Jones G OstroskyCanadaAnna Fali RENEWAL
Faith C ChuiCanadaOnyama Limba QUALIFIED
Cody J FlosiJapanOnyama Limba NEW
Tony E SaylorsGermanyBernardo Dominic PROPOSAL
Wickens I GlickUnited KingdomAmy Elsner NEW
Leon B VocelkaFranceStephen Shaw UNQUALIFIED
Sinclair D PoquetteItalyXuxue Feng QUALIFIED
Greenwood E OldroydIndiaAmy Elsner PROPOSAL
Greenwood F IturbideRussiaBernardo Dominic QUALIFIED
Silvio H PerinIndiaAnna Fali UNQUALIFIED
Julie T FerenczArgentinaBernardo Dominic PROPOSAL
Morrow D SaylorsAustraliaStephen Shaw NEGOTIATION
Maria T NestleIndiaIoni Bowcher UNQUALIFIED
Munro I KolmetzArgentinaStephen Shaw PROPOSAL
David N PerinJapanIoni Bowcher NEW
Misaki F SlusarskiBrazilElwin Sharvill NEGOTIATION
Mayumi E RimCanadaXuxue Feng PROPOSAL
Chavez Y SlusarskiSpainIoni Bowcher RENEWAL
Johnson T ShinkoSpainIoni Bowcher RENEWAL
Smith Z DilliardUnited KingdomBernardo Dominic NEGOTIATION
Misaki S BologniaJapanAsiya Javayant PROPOSAL
Jennifer G DilliardBrazilStephen Shaw RENEWAL
Jones G IturbideArgentinaIvan Magalhaes QUALIFIED
Tony F CaldareraJapanBernardo Dominic PROPOSAL
Clifford Z MorascaCanadaElwin Sharvill RENEWAL
Smith C VocelkaGermanyAsiya Javayant NEGOTIATION
Juan R DilliardSpainOnyama Limba QUALIFIED
Ricardo F PaprockiAustraliaIvan Magalhaes NEGOTIATION
Mayumi A WaycottIndiaStephen Shaw UNQUALIFIED
Silvio M CampainCanadaBernardo Dominic NEW
Frozen Columns
Name
Rodrigues J Albares
Costa M Paprocki
Ashley P Amigon
Smith Y Amigon
Aditya T Shinko
Juan S Shinko
Francesco S Chui
Julie J Waycott
Jones Y Venere
Adams Z Malet
Arvin V Vocelka
Costa J Flosi
Arvin S Royster
Cody L Wieser
Juan K Caldarera
Cody I Sergi
Smith F Maclead
Alejandro H Malet
Alejandro V Poquette
Morrow B Perin
Faith D Caudy
Isabel R Bolognia
Maisha Q Stenseth
Emily P Campain
Aruna W Bowley
Stacey F Stockham
Ricardo N Stenseth
Maria X Bowley
Antonio T Tollner
Kaitlin C Stenseth
Jennifer U Albares
Claire I Amigon
Munro W Figeroa
Silvio I Sergi
Deepesh P Bolognia
Salvatore W Darakjy
Alejandro U Ferencz
Maisha V Darakjy
Leja M Vocelka
Antonio X Campain
Aditya W Kusko
Stacey E Gaucho
Leon G Doe
Mujtaba E Stockham
Costa Z Amigon
Cody X Briddick
Kadeem C Chui
Misaki S Albares
Kadeem X Oldroyd
Mayumi L Morasca
IdCountryDate
1000Argentina2024-05-18
1001Australia2024-05-16
1002Australia2024-05-18
1003India2024-05-11
1004Japan2024-04-29
1005Russia2024-05-25
1006France2024-05-03
1007Canada2024-05-19
1008France2024-05-08
1009Spain2024-05-03
1010Japan2024-05-06
1011France2024-05-06
1012Canada2024-05-26
1013Japan2024-05-03
1014India2024-04-27
1015India2024-05-24
1016France2024-05-21
1017Russia2024-05-04
1018India2024-05-20
1019Canada2024-04-28
1020United Kingdom2024-05-25
1021Brazil2024-05-10
1022Germany2024-05-23
1023Spain2024-04-27
1024Italy2024-04-27
1025Russia2024-05-13
1026United Kingdom2024-05-18
1027Russia2024-05-21
1028Russia2024-04-27
1029Italy2024-04-30
1030Russia2024-05-15
1031Brazil2024-05-17
1032Germany2024-05-07
1033Australia2024-04-27
1034Brazil2024-05-26
1035Russia2024-04-29
1036France2024-04-30
1037Germany2024-05-11
1038Germany2024-04-29
1039Spain2024-05-26
1040Canada2024-05-14
1041Germany2024-05-16
1042Russia2024-05-17
1043India2024-05-03
1044Russia2024-05-20
1045Russia2024-05-03
1046France2024-05-15
1047Argentina2024-05-10
1048Japan2024-05-24
1049Germany2024-05-23

On-Demand Data

NameIdCountryDate
Mujtaba Z Malet1000Canada2024-05-11
Emily I Ruta1001Australia2024-05-13
Isabel Y Foller1002Australia2024-05-19
Maisha V Rulapaugh1003Russia2024-05-22
Maisha P Campain1004Spain2024-05-15
Isabel T Foller1005Russia2024-05-26
Izzy Q Rim1006France2024-05-13
James D Foller1007France2024-04-29
James Y Bolognia1008France2024-05-09
Emily R Rulapaugh1009Argentina2024-05-10
Jeanfrancois K Inouye1010Germany2024-05-08
Costa Q Gaucho1011Japan2024-04-27
Cody U Iturbide1012Canada2024-05-02
Stacey L Bowley1013France2024-05-02
Jeanfrancois L Ferencz1014Italy2024-05-11
Smith P Royster1015Canada2024-05-16
Francesco T Dilliard1016India2024-05-16
Darci H Royster1017Russia2024-04-30
Leon R Dilliard1018Italy2024-05-08
Jennifer J Inouye1019United Kingdom2024-04-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi J ShinkoRussiaIoni Bowcher QUALIFIED
Antonio G RulapaughSpainXuxue Feng NEW
Kaitlin F MaletSpainStephen Shaw RENEWAL
Jones Z StockhamItalyStephen Shaw PROPOSAL
Salvatore T GauchoBrazilAnna Fali UNQUALIFIED
Aika S BologniaFranceElwin Sharvill RENEWAL
Antonio U FollerRussiaStephen Shaw NEW
Kaitlin E BowleyCanadaXuxue Feng UNQUALIFIED
Leja V MaletAustraliaBernardo Dominic NEW
Salvatore U IturbideJapanStephen Shaw PROPOSAL
Morrow X RoysterAustraliaAnna Fali RENEWAL
Maria G RulapaughCanadaXuxue Feng QUALIFIED
James H InouyeUnited KingdomStephen Shaw QUALIFIED
Ivar A OldroydBrazilAsiya Javayant PROPOSAL
Jennifer E IturbideSpainAmy Elsner QUALIFIED
Ricardo D AlbaresItalyIvan Magalhaes NEGOTIATION
Clifford I OstroskySpainBernardo Dominic UNQUALIFIED
Mujtaba J AlbaresGermanyOnyama Limba RENEWAL
Jeanfrancois A WhobreyCanadaOnyama Limba RENEWAL
Ivar W VocelkaBrazilIoni Bowcher PROPOSAL
Juan P CaudyIndiaAmy Elsner QUALIFIED
Julie A WhobreyJapanAsiya Javayant UNQUALIFIED
Deepesh H GauchoRussiaIvan Magalhaes QUALIFIED
Aika W StensethItalyXuxue Feng NEW
Julie I AlbaresArgentinaElwin Sharvill RENEWAL
Maria K FerenczCanadaOnyama Limba UNQUALIFIED
Morrow U PaprockiBrazilOnyama Limba NEW
Ashley C RulapaughGermanyElwin Sharvill NEW
Ivar C AlbaresIndiaXuxue Feng RENEWAL
Jeanfrancois I FigeroaRussiaXuxue Feng NEW
Arvin B RutaItalyAmy Elsner NEW
Kadeem N OstroskyCanadaStephen Shaw QUALIFIED
Cody M RutaJapanAsiya Javayant NEGOTIATION
Cody I SlusarskiItalyOnyama Limba PROPOSAL
Jefferson Y InouyeBrazilStephen Shaw PROPOSAL
Alejandro L ShinkoItalyIoni Bowcher NEGOTIATION
Clifford F WhobreySpainXuxue Feng PROPOSAL
Silvio E FerenczBrazilOnyama Limba NEW
Clifford B RimGermanyStephen Shaw RENEWAL
Cody M VocelkaSpainIoni Bowcher 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>