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
Costa S PoquetteIndiaAmy Elsner PROPOSAL
Misaki V WieserArgentinaAnna Fali QUALIFIED
Ricardo S MacleadCanadaAmy Elsner NEGOTIATION
Julie G MarrierCanadaOnyama Limba RENEWAL
Murillo J WieserFranceAnna Fali NEW
Kaitlin H CaudyArgentinaXuxue Feng RENEWAL
Deepesh P AlbaresJapanXuxue Feng NEGOTIATION
Aditya J DoeRussiaBernardo Dominic QUALIFIED
Leon J PerinRussiaAmy Elsner NEW
Faith C GillianArgentinaXuxue Feng RENEWAL
Chavez U RimUnited KingdomElwin Sharvill UNQUALIFIED
Kaitlin S FerenczRussiaElwin Sharvill NEW
Adams G MorascaGermanyIoni Bowcher NEGOTIATION
Claire M MacleadAustraliaAsiya Javayant UNQUALIFIED
Wickens F StockhamCanadaElwin Sharvill QUALIFIED
Salvatore L SaylorsIndiaXuxue Feng RENEWAL
Alejandro G BowleyAustraliaBernardo Dominic QUALIFIED
James B GlickArgentinaStephen Shaw UNQUALIFIED
Murillo F DarakjyFranceIvan Magalhaes NEW
Emily C SergiItalyBernardo Dominic PROPOSAL
Rodrigues M InouyeSpainIoni Bowcher PROPOSAL
Deepesh H FigeroaUnited KingdomAmy Elsner RENEWAL
Jennifer N OstroskyBrazilBernardo Dominic NEW
Greenwood E BowleyItalyAsiya Javayant PROPOSAL
Antonio G SchemmerIndiaBernardo Dominic QUALIFIED
Chavez N WaycottGermanyIoni Bowcher RENEWAL
Jefferson V SergiFranceStephen Shaw NEW
Stacey X IturbideGermanyBernardo Dominic NEGOTIATION
Tony V TollnerGermanyElwin Sharvill RENEWAL
Rodrigues S VenereBrazilOnyama Limba RENEWAL
Tony C MaletItalyXuxue Feng QUALIFIED
Sinclair L FollerItalyAmy Elsner RENEWAL
Isabel J MaletJapanBernardo Dominic NEGOTIATION
Alejandro U PerinSpainAmy Elsner NEW
Cody N BriddickItalyIoni Bowcher PROPOSAL
Emily D BologniaBrazilOnyama Limba NEGOTIATION
Chavez C AlbaresRussiaBernardo Dominic UNQUALIFIED
Rodrigues E DarakjyUnited KingdomIoni Bowcher QUALIFIED
Cody G MarrierFranceElwin Sharvill NEW
Salvatore Q MarrierCanadaAnna Fali QUALIFIED
Costa E NestleSpainIvan Magalhaes UNQUALIFIED
Emily K IturbideSpainOnyama Limba UNQUALIFIED
Juan B StockhamGermanyElwin Sharvill PROPOSAL
Silvio I DilliardGermanyAnna Fali NEGOTIATION
Ivar R TollnerItalyXuxue Feng RENEWAL
Kadeem Y FigeroaFranceAnna Fali RENEWAL
Alejandro P MarrierCanadaIvan Magalhaes NEGOTIATION
Wickens P AmigonFranceOnyama Limba QUALIFIED
Cody E DilliardIndiaBernardo Dominic RENEWAL
Leon W PaprockiJapanBernardo Dominic QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Morrow R IturbideSpainIoni Bowcher NEW
Arvin C VenereSpainIoni Bowcher QUALIFIED
Mujtaba R OldroydIndiaAsiya Javayant RENEWAL
Alejandro K CaudyGermanyIoni Bowcher UNQUALIFIED
Isabel I ChuiSpainStephen Shaw RENEWAL
Sinclair D GauchoUnited KingdomAnna Fali NEW
Leja T TollnerArgentinaStephen Shaw NEW
Smith N CaldareraBrazilAsiya Javayant UNQUALIFIED
James Z SlusarskiArgentinaStephen Shaw UNQUALIFIED
Aditya M FerenczBrazilIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco T DarakjyItaly2024-06-12Printing Dimensions UNQUALIFIED7Bernardo Dominic
1001Isabel U AlbaresGermany2024-06-05Truhlar And Truhlar Attys PROPOSAL21Ivan Magalhaes
1002Octavia L PerinGermany2024-06-08Chemel, James L Cpa NEW87Ivan Magalhaes
1003Claire H RulapaughCanada2024-05-29Feiner Bros NEGOTIATION99Bernardo Dominic
1004Nicolas U WaycottItaly2024-06-01Truhlar And Truhlar Attys NEGOTIATION9Onyama Limba
1005Greenwood E DarakjyAustralia2024-06-17Buckley Miller Wright NEW23Xuxue Feng
1006Jeanfrancois F VocelkaSpain2024-06-12Feiner Bros UNQUALIFIED0Anna Fali
1007Maria P AlbaresAustralia2024-06-06Rousseaux, Michael Esq UNQUALIFIED9Ivan Magalhaes
1008Sinclair F IturbideCanada2024-06-08Dorl, James J Esq PROPOSAL38Amy Elsner
1009Munro D GauchoJapan2024-06-03Feiner Bros PROPOSAL99Onyama Limba
1010Smith I IturbideAustralia2024-06-07Feltz Printing Service PROPOSAL53Onyama Limba
1011James S MarrierItaly2024-06-01Benton, John B Jr PROPOSAL85Stephen Shaw
1012Ashley V WieserAustralia2024-06-20King, Christopher A Esq NEGOTIATION61Xuxue Feng
1013Darci O SaylorsBrazil2024-06-17Benton, John B Jr NEGOTIATION70Asiya Javayant
1014David X KuskoItaly2024-06-13Morlong Associates UNQUALIFIED76Elwin Sharvill
1015Kaitlin E MaletBrazil2024-05-27Dorl, James J Esq NEW1Asiya Javayant
1016Ricardo M GarufiGermany2024-06-13Rousseaux, Michael Esq QUALIFIED30Onyama Limba
1017Mujtaba N PerinRussia2024-05-24Benton, John B Jr QUALIFIED70Asiya Javayant
1018Deepesh P RutaGermany2024-06-07Chapman, Ross E Esq RENEWAL83Onyama Limba
1019Ricardo Y RutaGermany2024-06-03Chapman, Ross E Esq NEGOTIATION50Ivan Magalhaes
1020Mayumi A RoysterIndia2024-06-18Printing Dimensions RENEWAL38Elwin Sharvill
1021Aditya D AlbaresCanada2024-05-30Commercial Press RENEWAL12Ivan Magalhaes
1022Mayumi Y CaldareraBrazil2024-05-26Chapman, Ross E Esq NEGOTIATION51Amy Elsner
1023Jefferson N BologniaArgentina2024-06-13Chemel, James L Cpa RENEWAL99Ioni Bowcher
1024Isabel X DoeArgentina2024-06-14Printing Dimensions PROPOSAL5Onyama Limba
1025Aruna T IturbideGermany2024-06-13Dorl, James J Esq NEW62Asiya Javayant
1026Juan P WieserArgentina2024-06-19Rangoni Of Florence PROPOSAL41Amy Elsner
1027Aruna K BriddickUnited Kingdom2024-05-28Chemel, James L Cpa NEW57Ioni Bowcher
1028Adams E OldroydUnited Kingdom2024-05-28Buckley Miller Wright PROPOSAL15Anna Fali
1029Antonio C SlusarskiGermany2024-05-31Commercial Press NEW28Ivan Magalhaes
1030Nicolas A KolmetzFrance2024-05-26Commercial Press PROPOSAL39Ioni Bowcher
1031Antonio Q IturbideSpain2024-05-25Chemel, James L Cpa UNQUALIFIED58Stephen Shaw
1032Murillo P WhobreyCanada2024-05-31Feiner Bros NEGOTIATION57Stephen Shaw
1033Smith O TollnerSpain2024-06-14Feiner Bros PROPOSAL95Anna Fali
1034Adams S DilliardCanada2024-06-17Benton, John B Jr UNQUALIFIED53Stephen Shaw
1035Tony D KuskoJapan2024-05-25Rangoni Of Florence QUALIFIED99Onyama Limba
1036Mujtaba B DoeItaly2024-06-01Buckley Miller Wright NEW53Amy Elsner
1037Costa S RulapaughJapan2024-05-31Rousseaux, Michael Esq NEW58Elwin Sharvill
1038Aditya S GillianRussia2024-06-19Truhlar And Truhlar Attys PROPOSAL71Bernardo Dominic
1039Antonio B MaletUnited Kingdom2024-06-09King, Christopher A Esq NEW47Onyama Limba
1040Julie J VenereBrazil2024-06-08Rangoni Of Florence NEW83Ioni Bowcher
1041Mayumi T PerinItaly2024-06-12Rousseaux, Michael Esq NEGOTIATION12Xuxue Feng
1042Faith A MarrierCanada2024-06-07Benton, John B Jr NEW55Bernardo Dominic
1043David S SlusarskiIndia2024-06-08Morlong Associates QUALIFIED3Anna Fali
1044Jones J WhobreyCanada2024-05-26Buckley Miller Wright PROPOSAL29Anna Fali
1045Salvatore I ChuiArgentina2024-06-03Printing Dimensions NEGOTIATION12Elwin Sharvill
1046Isabel I KolmetzRussia2024-06-20Commercial Press NEGOTIATION46Bernardo Dominic
1047Francesco M MaletCanada2024-05-28Chapman, Ross E Esq RENEWAL36Stephen Shaw
1048Jefferson S RimItaly2024-06-15Morlong Associates NEGOTIATION20Elwin Sharvill
1049Ashley S FigeroaJapan2024-05-29Feiner Bros PROPOSAL23Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Aruna I KuskoArgentinaIvan Magalhaes NEW
Arvin F RoysterAustraliaBernardo Dominic NEW
Johnson D SlusarskiFranceElwin Sharvill NEW
Arvin P OldroydIndiaStephen Shaw UNQUALIFIED
Sinclair H SaylorsJapanElwin Sharvill QUALIFIED
Adams X AlbaresFranceAmy Elsner NEW
Mayumi T RutaBrazilBernardo Dominic PROPOSAL
Maria A GlickGermanyAsiya Javayant UNQUALIFIED
Leja N WieserFranceIvan Magalhaes UNQUALIFIED
Jennifer G SchemmerSpainElwin Sharvill UNQUALIFIED
Izzy J FerenczRussiaBernardo Dominic QUALIFIED
Stacey R WhobreyAustraliaIoni Bowcher NEW
Costa Y OstroskyUnited KingdomXuxue Feng QUALIFIED
Izzy X MorascaBrazilIoni Bowcher RENEWAL
Aruna K IturbideUnited KingdomXuxue Feng NEW
Jeanfrancois U StockhamFranceIvan Magalhaes UNQUALIFIED
Aruna L FigeroaSpainXuxue Feng PROPOSAL
David S StensethItalyAnna Fali NEW
Leja P DilliardSpainBernardo Dominic UNQUALIFIED
Claire I GillianArgentinaElwin Sharvill QUALIFIED
Aditya J WieserSpainXuxue Feng QUALIFIED
Jennifer L FlosiJapanOnyama Limba UNQUALIFIED
Leja G OldroydItalyIvan Magalhaes NEW
Silvio R OldroydGermanyOnyama Limba RENEWAL
Murillo T PerinUnited KingdomOnyama Limba PROPOSAL
Mayumi E StensethSpainBernardo Dominic QUALIFIED
Adams O RulapaughGermanyStephen Shaw NEGOTIATION
Morrow T RutaCanadaStephen Shaw QUALIFIED
Emily O InouyeItalyAmy Elsner QUALIFIED
Nicolas G FerenczRussiaStephen Shaw UNQUALIFIED
Faith O GillianFranceAmy Elsner UNQUALIFIED
Munro L CampainArgentinaAsiya Javayant NEGOTIATION
Deepesh Q FerenczGermanyElwin Sharvill QUALIFIED
Murillo F PerinCanadaAnna Fali UNQUALIFIED
Maria Y IturbideBrazilAnna Fali QUALIFIED
Octavia K WhobreyJapanBernardo Dominic NEGOTIATION
Maisha G GillianIndiaStephen Shaw NEGOTIATION
Costa V NestleSpainOnyama Limba PROPOSAL
Murillo W StensethUnited KingdomAnna Fali RENEWAL
Claire W SergiUnited KingdomAnna Fali QUALIFIED
Rodrigues M TollnerJapanOnyama Limba QUALIFIED
Jennifer O BriddickCanadaElwin Sharvill NEW
Kadeem P VenereCanadaIoni Bowcher UNQUALIFIED
Chavez W StensethSpainIvan Magalhaes RENEWAL
Aditya K CampainSpainAmy Elsner PROPOSAL
Arvin R WaycottIndiaElwin Sharvill PROPOSAL
Adams A OldroydGermanyXuxue Feng UNQUALIFIED
Morrow P WhobreyAustraliaIoni Bowcher UNQUALIFIED
Morrow L CaldareraArgentinaAsiya Javayant UNQUALIFIED
Adams Q MaletJapanIoni Bowcher UNQUALIFIED
Frozen Columns
Name
James D Venere
Greenwood S Ruta
Aruna P Rulapaugh
Kadeem P Oldroyd
Tony P Rulapaugh
Munro U Iturbide
Johnson R Albares
Sinclair O Flosi
Alejandro C Ostrosky
Nicolas K Royster
Sinclair M Maclead
Julie F Figeroa
Ivar C Figeroa
Costa V Caldarera
Julie M Gillian
Greenwood V Nestle
Isabel Z Amigon
Jefferson R Stenseth
Claire C Oldroyd
Aditya Q Maclead
Ivar M Tollner
Izzy R Figeroa
Nicolas F Shinko
Mujtaba X Stockham
Emily B Stenseth
Aruna K Caldarera
Ashley P Rim
Kaitlin A Bolognia
Juan F Oldroyd
Aika C Caudy
Jennifer B Glick
Aruna Y Bowley
Jefferson A Garufi
Darci Y Ferencz
James L Chui
Deepesh Q Marrier
Leja H Royster
Arvin G Whobrey
Alejandro G Caldarera
Maria B Butt
Jefferson D Oldroyd
Aika V Chui
Aika X Doe
Jones A Morasca
Jefferson W Wieser
Sinclair U Oldroyd
Stacey E Dilliard
Julie N Stenseth
Morrow A Sergi
Deepesh V Doe
IdCountryDate
1000Spain2024-06-17
1001France2024-05-25
1002Russia2024-06-17
1003Spain2024-06-21
1004Canada2024-05-31
1005Brazil2024-06-16
1006India2024-06-11
1007Spain2024-06-10
1008Australia2024-05-26
1009India2024-06-13
1010United Kingdom2024-06-06
1011Russia2024-06-11
1012Australia2024-06-12
1013United Kingdom2024-06-17
1014Spain2024-05-27
1015Spain2024-05-24
1016Italy2024-06-17
1017Canada2024-06-17
1018Australia2024-06-03
1019Spain2024-06-03
1020Brazil2024-06-16
1021Australia2024-06-09
1022Italy2024-06-08
1023Argentina2024-06-01
1024Russia2024-06-05
1025Spain2024-05-29
1026Germany2024-06-04
1027Brazil2024-06-08
1028Spain2024-05-26
1029Russia2024-06-11
1030Australia2024-05-28
1031United Kingdom2024-06-13
1032Brazil2024-06-12
1033Australia2024-05-25
1034Canada2024-05-27
1035Spain2024-06-22
1036Brazil2024-05-28
1037Spain2024-06-09
1038Japan2024-05-28
1039United Kingdom2024-06-08
1040Germany2024-06-14
1041United Kingdom2024-05-27
1042India2024-06-07
1043Argentina2024-06-06
1044Argentina2024-06-12
1045Argentina2024-05-28
1046Australia2024-06-01
1047Australia2024-06-15
1048Argentina2024-06-04
1049India2024-06-08

On-Demand Data

NameIdCountryDate
Maisha I Tollner1000Spain2024-06-12
Julie I Iturbide1001United Kingdom2024-06-10
David W Figeroa1002Germany2024-06-19
Greenwood A Shinko1003Germany2024-05-27
Wickens E Doe1004Brazil2024-05-30
Mujtaba N Ostrosky1005Russia2024-05-29
Chavez C Morasca1006Argentina2024-05-24
Wickens J Maclead1007Italy2024-05-30
Stacey S Briddick1008Japan2024-06-01
Maisha L Gillian1009Germany2024-06-08
Mujtaba M Albares1010Italy2024-06-10
Tony G Ostrosky1011India2024-06-18
Morrow B Wieser1012Germany2024-06-11
Leon X Bowley1013Brazil2024-06-06
Rodrigues T Doe1014Australia2024-06-14
Greenwood X Chui1015Australia2024-06-10
Jennifer B Butt1016Spain2024-06-04
Alejandro S Shinko1017United Kingdom2024-06-07
Kaitlin J Venere1018Brazil2024-06-15
Leon W Malet1019Brazil2024-05-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria Y CaudyAustraliaAnna Fali RENEWAL
David X MacleadUnited KingdomElwin Sharvill RENEWAL
Ricardo J ShinkoRussiaAnna Fali NEGOTIATION
Deepesh J FigeroaUnited KingdomAsiya Javayant QUALIFIED
Chavez O MaletItalyAmy Elsner RENEWAL
Kadeem Y GarufiAustraliaBernardo Dominic RENEWAL
Arvin F KuskoBrazilStephen Shaw NEGOTIATION
Maria R MacleadJapanAmy Elsner NEGOTIATION
Antonio L NickaArgentinaAsiya Javayant NEGOTIATION
Sinclair O ButtFranceXuxue Feng NEGOTIATION
Cody F KolmetzJapanStephen Shaw QUALIFIED
Sinclair H RulapaughJapanStephen Shaw NEGOTIATION
Ivar Q CampainJapanAnna Fali RENEWAL
Rodrigues O GarufiBrazilXuxue Feng PROPOSAL
Johnson Q WaycottGermanyXuxue Feng UNQUALIFIED
Ivar V MarrierAustraliaXuxue Feng PROPOSAL
Wickens H NestleCanadaIoni Bowcher PROPOSAL
Salvatore U BologniaBrazilIvan Magalhaes NEGOTIATION
Chavez G FerenczGermanyIoni Bowcher RENEWAL
Francesco L InouyeItalyAsiya Javayant UNQUALIFIED
Wickens H StensethSpainIoni Bowcher NEGOTIATION
Juan E RoysterGermanyIvan Magalhaes PROPOSAL
Maria T MacleadRussiaOnyama Limba UNQUALIFIED
Morrow U FigeroaAustraliaIoni Bowcher UNQUALIFIED
Adams C VocelkaGermanyAnna Fali QUALIFIED
Leja K DarakjyIndiaAsiya Javayant NEGOTIATION
Sinclair U BriddickIndiaStephen Shaw PROPOSAL
Mujtaba F DoeGermanyOnyama Limba QUALIFIED
Ashley V CaudyCanadaIoni Bowcher QUALIFIED
Chavez F KuskoJapanAmy Elsner NEGOTIATION
Johnson A DarakjyBrazilAmy Elsner QUALIFIED
Juan O StockhamJapanAnna Fali RENEWAL
Aruna T RutaGermanyAnna Fali PROPOSAL
David W SlusarskiAustraliaAsiya Javayant NEW
Ashley M RoysterGermanyStephen Shaw UNQUALIFIED
Tony Q GillianCanadaIoni Bowcher NEGOTIATION
Maria X PaprockiGermanyAsiya Javayant UNQUALIFIED
Clifford G FerenczIndiaXuxue Feng UNQUALIFIED
Ashley X GauchoArgentinaBernardo Dominic NEW
Antonio P SlusarskiSpainStephen Shaw PROPOSAL

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