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
Morrow Z MacleadIndiaIvan Magalhaes NEGOTIATION
Octavia N FerenczUnited KingdomXuxue Feng QUALIFIED
Johnson O DoeBrazilIoni Bowcher RENEWAL
Greenwood M GauchoJapanIoni Bowcher PROPOSAL
Francesco U PerinFranceAmy Elsner NEW
Jeanfrancois E GarufiAustraliaAsiya Javayant RENEWAL
Aruna H PoquetteGermanyBernardo Dominic PROPOSAL
Tony U KuskoUnited KingdomIoni Bowcher NEGOTIATION
Wickens Z SchemmerSpainAmy Elsner QUALIFIED
Morrow B AlbaresGermanyAnna Fali NEW
Sinclair N FollerAustraliaIvan Magalhaes PROPOSAL
Mayumi O StensethUnited KingdomXuxue Feng UNQUALIFIED
James L WieserUnited KingdomAnna Fali QUALIFIED
Silvio L WieserCanadaIoni Bowcher QUALIFIED
Claire M NickaJapanAnna Fali NEW
Kadeem G AlbaresItalyOnyama Limba PROPOSAL
Arvin V NestleBrazilXuxue Feng QUALIFIED
Emily E WieserIndiaOnyama Limba QUALIFIED
Juan R WieserArgentinaXuxue Feng NEGOTIATION
Jennifer Y SlusarskiAustraliaStephen Shaw RENEWAL
Julie E StockhamArgentinaIvan Magalhaes UNQUALIFIED
Munro C GarufiFranceIoni Bowcher NEW
Jennifer F CaudyRussiaOnyama Limba UNQUALIFIED
Cody F BowleyAustraliaBernardo Dominic NEW
Izzy H GlickBrazilAnna Fali PROPOSAL
Johnson Y GillianItalyElwin Sharvill RENEWAL
Darci R StensethGermanyAnna Fali NEGOTIATION
Emily S DarakjySpainAnna Fali NEGOTIATION
Leja L WaycottRussiaBernardo Dominic QUALIFIED
Cody O DoeCanadaIoni Bowcher UNQUALIFIED
Ricardo N VocelkaCanadaStephen Shaw QUALIFIED
Deepesh U VenereAustraliaIoni Bowcher NEGOTIATION
Leon W BowleyGermanyOnyama Limba RENEWAL
Isabel I FollerIndiaElwin Sharvill NEW
Rodrigues Q IturbideArgentinaAmy Elsner QUALIFIED
Salvatore L CaldareraIndiaIoni Bowcher RENEWAL
James A GillianBrazilAmy Elsner QUALIFIED
Chavez O AmigonIndiaStephen Shaw NEGOTIATION
Juan F FlosiGermanyBernardo Dominic QUALIFIED
Izzy Q BowleyUnited KingdomIoni Bowcher PROPOSAL
Wickens R VocelkaBrazilAmy Elsner QUALIFIED
Claire V WaycottAustraliaIoni Bowcher NEW
Maisha X MorascaBrazilAmy Elsner NEW
Ivar I OstroskyUnited KingdomAsiya Javayant NEGOTIATION
Misaki R WieserFranceStephen Shaw RENEWAL
Octavia B FollerSpainOnyama Limba UNQUALIFIED
Adams P RulapaughSpainOnyama Limba PROPOSAL
Aruna J RimJapanOnyama Limba NEGOTIATION
Leon A VenereUnited KingdomAnna Fali QUALIFIED
Jennifer A FerenczAustraliaOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Mayumi Q GillianBrazilAnna Fali RENEWAL
Deepesh C OldroydUnited KingdomAnna Fali NEGOTIATION
Greenwood V BriddickUnited KingdomAnna Fali QUALIFIED
Misaki I NestleGermanyStephen Shaw QUALIFIED
Misaki V MorascaAustraliaAsiya Javayant UNQUALIFIED
Kaitlin Y CampainAustraliaBernardo Dominic NEGOTIATION
Aika N SchemmerFranceOnyama Limba PROPOSAL
Ivar J GillianSpainAnna Fali RENEWAL
Ivar T RimAustraliaXuxue Feng NEW
Salvatore G BologniaGermanyElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel Y InouyeArgentina2024-05-25Feltz Printing Service UNQUALIFIED36Ioni Bowcher
1001Silvio L ShinkoBrazil2024-06-06Feltz Printing Service NEW83Xuxue Feng
1002Rodrigues P VocelkaItaly2024-05-23Rangoni Of Florence PROPOSAL49Elwin Sharvill
1003Maria D FollerSpain2024-05-23Feltz Printing Service NEGOTIATION87Ioni Bowcher
1004Faith Q CaldareraIndia2024-06-06Benton, John B Jr QUALIFIED35Onyama Limba
1005Misaki O RulapaughGermany2024-05-28Rousseaux, Michael Esq RENEWAL6Bernardo Dominic
1006Munro O GlickSpain2024-05-26Truhlar And Truhlar Attys NEW56Elwin Sharvill
1007Arvin C RutaItaly2024-06-12Feltz Printing Service QUALIFIED45Onyama Limba
1008Octavia Z KolmetzCanada2024-05-20Morlong Associates QUALIFIED79Anna Fali
1009Aruna H BowleyArgentina2024-06-17Truhlar And Truhlar Attys RENEWAL70Elwin Sharvill
1010Darci J SchemmerAustralia2024-05-31Morlong Associates RENEWAL82Ivan Magalhaes
1011Maria D InouyeUnited Kingdom2024-05-31Chemel, James L Cpa NEW58Ioni Bowcher
1012Tony N BowleyUnited Kingdom2024-06-12Dorl, James J Esq NEW0Elwin Sharvill
1013Isabel G FollerUnited Kingdom2024-06-04Printing Dimensions QUALIFIED81Amy Elsner
1014Juan O CaldareraBrazil2024-05-23Chanay, Jeffrey A Esq RENEWAL92Asiya Javayant
1015Maisha A GillianGermany2024-05-24Feiner Bros NEGOTIATION79Elwin Sharvill
1016Greenwood K WaycottItaly2024-06-16Chapman, Ross E Esq RENEWAL51Bernardo Dominic
1017Antonio X RutaAustralia2024-06-03Morlong Associates RENEWAL71Asiya Javayant
1018David O VocelkaItaly2024-05-27Truhlar And Truhlar Attys UNQUALIFIED49Ivan Magalhaes
1019Salvatore V VocelkaCanada2024-05-27Chapman, Ross E Esq PROPOSAL31Bernardo Dominic
1020Izzy V RulapaughItaly2024-05-19Morlong Associates NEW7Stephen Shaw
1021Clifford A MarrierSpain2024-06-13Truhlar And Truhlar Attys RENEWAL3Amy Elsner
1022Greenwood W AlbaresBrazil2024-06-03Benton, John B Jr PROPOSAL4Ivan Magalhaes
1023Cody A CaudyBrazil2024-06-10Dorl, James J Esq NEW76Ivan Magalhaes
1024Ashley S DoeFrance2024-06-14Dorl, James J Esq NEW31Ivan Magalhaes
1025Arvin J AlbaresAustralia2024-05-26Dorl, James J Esq PROPOSAL30Asiya Javayant
1026Emily T InouyeAustralia2024-06-16Feltz Printing Service PROPOSAL43Onyama Limba
1027Sinclair O MacleadCanada2024-05-19Buckley Miller Wright NEGOTIATION50Stephen Shaw
1028Emily E GillianFrance2024-06-14Printing Dimensions PROPOSAL13Bernardo Dominic
1029Greenwood J DilliardBrazil2024-06-02Chanay, Jeffrey A Esq NEW24Anna Fali
1030Arvin L PoquetteUnited Kingdom2024-06-02Chemel, James L Cpa PROPOSAL8Ioni Bowcher
1031Alejandro V NestleRussia2024-06-17King, Christopher A Esq UNQUALIFIED9Onyama Limba
1032Aruna F MarrierAustralia2024-05-31Feiner Bros QUALIFIED3Ioni Bowcher
1033Octavia O WaycottUnited Kingdom2024-06-02Feiner Bros NEGOTIATION58Elwin Sharvill
1034Wickens I MacleadGermany2024-05-25Rousseaux, Michael Esq QUALIFIED27Asiya Javayant
1035Ivar M AmigonJapan2024-05-23Commercial Press RENEWAL3Xuxue Feng
1036Silvio X BriddickJapan2024-05-27Printing Dimensions PROPOSAL58Stephen Shaw
1037Misaki F CaudyGermany2024-06-14Morlong Associates NEGOTIATION4Elwin Sharvill
1038Izzy T IturbideCanada2024-06-09Dorl, James J Esq QUALIFIED94Elwin Sharvill
1039Maria N GlickArgentina2024-06-07Buckley Miller Wright NEW37Ivan Magalhaes
1040Octavia G RimAustralia2024-06-08Buckley Miller Wright RENEWAL72Ioni Bowcher
1041Antonio W StensethIndia2024-05-26Chemel, James L Cpa PROPOSAL11Ivan Magalhaes
1042Ivar R ShinkoCanada2024-05-22King, Christopher A Esq NEW16Anna Fali
1043Isabel O PoquetteFrance2024-05-22Benton, John B Jr UNQUALIFIED44Ivan Magalhaes
1044Faith F FerenczAustralia2024-06-16Rousseaux, Michael Esq UNQUALIFIED60Anna Fali
1045Rodrigues M StensethAustralia2024-06-03Chanay, Jeffrey A Esq QUALIFIED43Ioni Bowcher
1046Morrow V RimArgentina2024-05-28Benton, John B Jr QUALIFIED3Ioni Bowcher
1047Rodrigues P OstroskyArgentina2024-05-22Printing Dimensions NEGOTIATION53Ivan Magalhaes
1048Mayumi U ShinkoJapan2024-05-23Chapman, Ross E Esq NEGOTIATION90Bernardo Dominic
1049Leja D SergiIndia2024-06-01Feiner Bros UNQUALIFIED19Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Arvin U RoysterJapanElwin Sharvill NEW
Aika E SchemmerCanadaXuxue Feng PROPOSAL
Jennifer S MarrierCanadaAnna Fali RENEWAL
Wickens D ChuiJapanAmy Elsner NEGOTIATION
Aditya M TollnerAustraliaAsiya Javayant NEW
Costa S StockhamCanadaAnna Fali RENEWAL
Octavia O DarakjyBrazilIvan Magalhaes NEW
Kaitlin W SlusarskiRussiaIvan Magalhaes QUALIFIED
Jeanfrancois W FlosiItalyAmy Elsner QUALIFIED
Mayumi P GauchoFranceBernardo Dominic NEGOTIATION
Claire H GillianJapanOnyama Limba UNQUALIFIED
Julie S RutaGermanyBernardo Dominic PROPOSAL
Claire K SaylorsArgentinaStephen Shaw NEW
Johnson G GillianRussiaIvan Magalhaes QUALIFIED
Kaitlin M DoeBrazilIoni Bowcher NEW
Greenwood P MorascaAustraliaElwin Sharvill PROPOSAL
Morrow J RimUnited KingdomAsiya Javayant QUALIFIED
Clifford C StockhamFranceStephen Shaw RENEWAL
Wickens E WhobreyAustraliaAmy Elsner NEW
Kadeem K KolmetzJapanElwin Sharvill UNQUALIFIED
Cody H StockhamUnited KingdomBernardo Dominic UNQUALIFIED
Tony F WieserUnited KingdomIoni Bowcher PROPOSAL
Claire J GlickArgentinaIoni Bowcher NEW
Costa S MarrierIndiaBernardo Dominic NEW
Deepesh Q ButtItalyXuxue Feng PROPOSAL
Jeanfrancois L GauchoJapanBernardo Dominic PROPOSAL
Leon N MorascaRussiaIvan Magalhaes NEGOTIATION
Costa F CaldareraSpainAsiya Javayant QUALIFIED
Aika V TollnerUnited KingdomStephen Shaw NEW
Francesco T ButtAustraliaElwin Sharvill NEW
Sinclair Q KuskoFranceAsiya Javayant NEW
Mujtaba L CampainItalyIvan Magalhaes QUALIFIED
Murillo S KolmetzItalyElwin Sharvill PROPOSAL
Izzy H GillianSpainAsiya Javayant UNQUALIFIED
Izzy R MorascaCanadaIoni Bowcher NEGOTIATION
Octavia T DarakjyCanadaAmy Elsner NEGOTIATION
Izzy T VocelkaCanadaBernardo Dominic QUALIFIED
Jeanfrancois J OstroskyFranceXuxue Feng RENEWAL
Faith J WieserIndiaOnyama Limba NEW
Chavez Q BowleyCanadaIvan Magalhaes NEGOTIATION
Aika C PaprockiRussiaAmy Elsner PROPOSAL
Julie N GauchoUnited KingdomAsiya Javayant QUALIFIED
Juan I SlusarskiArgentinaAnna Fali PROPOSAL
Leon J OstroskyGermanyOnyama Limba PROPOSAL
Juan J ShinkoFranceAsiya Javayant RENEWAL
Wickens T StensethSpainOnyama Limba QUALIFIED
Silvio Q RulapaughArgentinaOnyama Limba QUALIFIED
Aika W MacleadRussiaStephen Shaw NEW
Murillo C GarufiSpainStephen Shaw NEGOTIATION
Ashley C ShinkoSpainIoni Bowcher UNQUALIFIED
Frozen Columns
Name
Chavez Q Bowley
Leja R Schemmer
Aruna T Gaucho
Aditya D Oldroyd
Claire U Maclead
Maisha M Kusko
Claire O Paprocki
Stacey B Stockham
Silvio A Butt
Kadeem V Garufi
Tony J Rim
Arvin R Dilliard
Jefferson N Royster
Julie L Rim
Mayumi I Dilliard
Emily Z Darakjy
Leon B Figeroa
Munro Y Kolmetz
Emily K Glick
Adams J Gillian
Nicolas E Campain
Adams H Slusarski
Stacey Z Flosi
Tony M Perin
Aditya G Kusko
Munro B Tollner
Rodrigues J Royster
Juan W Shinko
Aruna T Royster
Isabel K Dilliard
Darci T Maclead
Arvin V Stenseth
Clifford Z Bolognia
Kadeem L Campain
Kadeem S Ruta
Aruna M Darakjy
Misaki I Kolmetz
Jefferson W Chui
Maisha W Malet
Smith X Whobrey
Jones X Ostrosky
David W Malet
Aditya R Stockham
Emily I Butt
Costa Y Marrier
Ricardo Z Oldroyd
Salvatore L Saylors
Antonio C Sergi
Izzy T Glick
Maria Y Tollner
IdCountryDate
1000Germany2024-06-03
1001Japan2024-05-28
1002India2024-05-31
1003Russia2024-06-17
1004Germany2024-06-06
1005Australia2024-06-12
1006Japan2024-06-17
1007India2024-06-13
1008Spain2024-05-30
1009France2024-06-07
1010United Kingdom2024-06-11
1011Germany2024-05-30
1012Russia2024-05-20
1013United Kingdom2024-05-27
1014Japan2024-06-14
1015France2024-06-09
1016Russia2024-05-23
1017Canada2024-06-05
1018Russia2024-06-16
1019Brazil2024-05-25
1020Italy2024-06-11
1021Brazil2024-06-03
1022Japan2024-06-15
1023France2024-06-11
1024Canada2024-05-24
1025India2024-06-12
1026Japan2024-05-20
1027Canada2024-05-24
1028India2024-05-19
1029Spain2024-06-09
1030United Kingdom2024-05-28
1031France2024-06-15
1032Italy2024-06-04
1033Argentina2024-05-29
1034France2024-05-26
1035Russia2024-05-28
1036Canada2024-05-20
1037France2024-05-22
1038Italy2024-06-09
1039Brazil2024-05-27
1040Australia2024-05-30
1041Germany2024-05-20
1042Japan2024-05-28
1043Germany2024-05-22
1044Spain2024-06-04
1045Australia2024-06-17
1046India2024-06-06
1047France2024-06-05
1048Brazil2024-05-20
1049Spain2024-06-17

On-Demand Data

NameIdCountryDate
Octavia I Doe1000Australia2024-06-01
Kadeem Y Waycott1001Spain2024-05-19
Wickens X Rulapaugh1002Spain2024-06-08
Misaki Q Tollner1003Italy2024-06-08
Leja Z Butt1004Italy2024-06-01
Kadeem A Malet1005Japan2024-05-28
Leon A Whobrey1006Spain2024-06-05
Antonio F Stockham1007Argentina2024-05-24
Maisha R Waycott1008Canada2024-05-23
Jefferson G Glick1009Italy2024-06-02
Mayumi O Wieser1010Australia2024-05-30
Jeanfrancois N Nicka1011Brazil2024-05-31
Aika D Rulapaugh1012Brazil2024-06-02
Jones E Royster1013India2024-05-31
Maisha H Albares1014Spain2024-06-03
Deepesh W Malet1015Spain2024-06-12
Aika G Nicka1016Russia2024-05-26
Kadeem E Wieser1017Germany2024-05-25
Claire H Poquette1018Australia2024-06-12
Morrow F Ferencz1019France2024-05-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore E RutaItalyElwin Sharvill NEW
Johnson X ChuiArgentinaOnyama Limba PROPOSAL
Smith E MarrierFranceElwin Sharvill PROPOSAL
Clifford W BriddickJapanAsiya Javayant UNQUALIFIED
Francesco U PerinIndiaAmy Elsner NEW
Aika C IturbideItalyIoni Bowcher NEW
Aditya Q WaycottGermanyElwin Sharvill PROPOSAL
Clifford N DilliardRussiaBernardo Dominic PROPOSAL
Isabel U PaprockiGermanyAsiya Javayant NEGOTIATION
Ricardo U FlosiJapanBernardo Dominic PROPOSAL
Antonio O SlusarskiItalyAmy Elsner QUALIFIED
Aika K ButtItalyStephen Shaw NEGOTIATION
Ashley I CaldareraUnited KingdomAsiya Javayant NEGOTIATION
Smith B PoquetteUnited KingdomAmy Elsner NEW
Darci E DoeUnited KingdomIvan Magalhaes UNQUALIFIED
Stacey H MaletCanadaBernardo Dominic RENEWAL
Jones G DilliardUnited KingdomIoni Bowcher NEGOTIATION
Smith K ShinkoGermanyXuxue Feng UNQUALIFIED
Arvin B TollnerCanadaIoni Bowcher NEGOTIATION
Wickens B FerenczAustraliaIoni Bowcher NEGOTIATION
Aditya U OstroskyGermanyXuxue Feng NEGOTIATION
Maria R DoeRussiaElwin Sharvill QUALIFIED
Kadeem E RoysterIndiaElwin Sharvill NEGOTIATION
Faith I BriddickRussiaStephen Shaw UNQUALIFIED
Isabel B BriddickSpainIvan Magalhaes QUALIFIED
Arvin X WieserArgentinaAnna Fali QUALIFIED
Ricardo U BriddickUnited KingdomElwin Sharvill UNQUALIFIED
Mayumi E WieserSpainElwin Sharvill NEW
Alejandro Z RimAustraliaIoni Bowcher RENEWAL
Leja P WaycottGermanyXuxue Feng NEGOTIATION
Greenwood Z GillianIndiaAnna Fali NEGOTIATION
Arvin T MacleadRussiaAsiya Javayant NEGOTIATION
Claire P WieserBrazilAnna Fali UNQUALIFIED
Costa K GarufiRussiaAmy Elsner NEW
Kaitlin I RutaGermanyElwin Sharvill QUALIFIED
Smith N DarakjyFranceAmy Elsner RENEWAL
Murillo A CaudyBrazilXuxue Feng QUALIFIED
Leja R OldroydJapanAnna Fali RENEWAL
Ashley Z OldroydItalyXuxue Feng NEW
Chavez I FerenczFranceBernardo Dominic RENEWAL

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