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
Mayumi S StockhamFranceIvan Magalhaes RENEWAL
Nicolas U WhobreyGermanyIoni Bowcher QUALIFIED
Jennifer A CaldareraIndiaAnna Fali UNQUALIFIED
Maisha G MaletArgentinaStephen Shaw RENEWAL
Morrow H PaprockiIndiaOnyama Limba RENEWAL
Kadeem E NickaSpainXuxue Feng NEGOTIATION
Misaki D RutaIndiaOnyama Limba NEW
Jeanfrancois T StensethSpainIvan Magalhaes QUALIFIED
Ashley N ChuiJapanIvan Magalhaes PROPOSAL
Juan B SlusarskiAustraliaOnyama Limba UNQUALIFIED
Greenwood L OstroskyRussiaXuxue Feng NEGOTIATION
Jeanfrancois O GarufiJapanBernardo Dominic NEGOTIATION
Greenwood T DarakjyIndiaIoni Bowcher QUALIFIED
Maria X FerenczGermanyElwin Sharvill QUALIFIED
Juan S FerenczUnited KingdomIvan Magalhaes NEGOTIATION
Jefferson S PoquetteSpainStephen Shaw QUALIFIED
Maisha E MorascaGermanyIoni Bowcher PROPOSAL
Jefferson L SaylorsSpainIvan Magalhaes NEW
Leon Y AlbaresItalyXuxue Feng NEGOTIATION
Francesco M VenereUnited KingdomElwin Sharvill RENEWAL
Wickens W GarufiIndiaXuxue Feng QUALIFIED
Faith K GillianRussiaStephen Shaw NEW
Ivar U GlickUnited KingdomAmy Elsner QUALIFIED
Greenwood O GillianCanadaAnna Fali NEW
Rodrigues L WaycottJapanAnna Fali QUALIFIED
Leon Y SlusarskiSpainXuxue Feng RENEWAL
Aika W SlusarskiJapanAnna Fali NEW
Salvatore N MaletCanadaIoni Bowcher RENEWAL
Nicolas B StockhamItalyIvan Magalhaes NEGOTIATION
Maisha W StockhamBrazilXuxue Feng UNQUALIFIED
James F RutaJapanStephen Shaw UNQUALIFIED
Julie F ShinkoUnited KingdomAnna Fali NEGOTIATION
Claire M FollerFranceIvan Magalhaes NEW
Jeanfrancois S OstroskyUnited KingdomElwin Sharvill UNQUALIFIED
Ivar R OldroydItalyAmy Elsner NEGOTIATION
Clifford D SlusarskiJapanAsiya Javayant NEGOTIATION
Johnson X RutaAustraliaIvan Magalhaes NEW
Arvin S MaletSpainIvan Magalhaes RENEWAL
Johnson P MaletAustraliaOnyama Limba QUALIFIED
Morrow H MorascaUnited KingdomIoni Bowcher UNQUALIFIED
Sinclair Q FlosiBrazilElwin Sharvill PROPOSAL
Aditya O GlickItalyIvan Magalhaes RENEWAL
Faith U IturbideJapanAnna Fali PROPOSAL
David I GauchoAustraliaOnyama Limba PROPOSAL
Stacey P KuskoCanadaIvan Magalhaes NEGOTIATION
Ashley W BriddickGermanyXuxue Feng UNQUALIFIED
Ivar P OldroydArgentinaStephen Shaw NEGOTIATION
Mayumi G PerinItalyIvan Magalhaes RENEWAL
Wickens D NestleGermanyAnna Fali UNQUALIFIED
Jeanfrancois T BowleyIndiaIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Jennifer F VocelkaJapanIvan Magalhaes PROPOSAL
Cody V VocelkaSpainAmy Elsner QUALIFIED
Jeanfrancois J GlickAustraliaOnyama Limba RENEWAL
Jones E CaudyItalyAnna Fali NEW
Clifford N OstroskyArgentinaAmy Elsner NEGOTIATION
Rodrigues C VenereJapanIoni Bowcher UNQUALIFIED
Octavia K AmigonRussiaElwin Sharvill QUALIFIED
Munro J FollerBrazilAsiya Javayant PROPOSAL
Isabel E RoysterArgentinaAmy Elsner NEGOTIATION
Ricardo Y MarrierSpainIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams E ButtJapan2024-06-08Chemel, James L Cpa RENEWAL10Elwin Sharvill
1001Murillo Z WaycottGermany2024-06-08Rangoni Of Florence NEGOTIATION5Asiya Javayant
1002Deepesh N KolmetzBrazil2024-06-24Rangoni Of Florence UNQUALIFIED53Amy Elsner
1003Salvatore A VenereGermany2024-06-17Chemel, James L Cpa UNQUALIFIED50Bernardo Dominic
1004Arvin V BowleyJapan2024-06-19Rangoni Of Florence QUALIFIED41Ioni Bowcher
1005Murillo R GlickGermany2024-05-29Feltz Printing Service UNQUALIFIED93Stephen Shaw
1006Aruna A DilliardSpain2024-06-09Chapman, Ross E Esq PROPOSAL74Amy Elsner
1007Morrow K CaldareraBrazil2024-06-17Benton, John B Jr NEGOTIATION7Ioni Bowcher
1008Jennifer E GlickArgentina2024-06-12Buckley Miller Wright PROPOSAL2Stephen Shaw
1009Ricardo Q WieserGermany2024-06-15Feiner Bros PROPOSAL45Onyama Limba
1010Julie A NestleGermany2024-06-13King, Christopher A Esq QUALIFIED97Ivan Magalhaes
1011Costa C AmigonSpain2024-06-07Printing Dimensions PROPOSAL45Elwin Sharvill
1012Aditya H BowleyArgentina2024-06-10Buckley Miller Wright UNQUALIFIED45Bernardo Dominic
1013Rodrigues C StockhamUnited Kingdom2024-05-28Rangoni Of Florence NEGOTIATION28Ioni Bowcher
1014Julie A InouyeSpain2024-06-14Buckley Miller Wright NEGOTIATION67Ivan Magalhaes
1015Faith N MaletRussia2024-06-09Chapman, Ross E Esq NEW57Amy Elsner
1016Cody P SlusarskiAustralia2024-06-20Chanay, Jeffrey A Esq NEW19Bernardo Dominic
1017Octavia F CaldareraItaly2024-06-12Benton, John B Jr RENEWAL11Ioni Bowcher
1018Antonio F GillianUnited Kingdom2024-05-28Chapman, Ross E Esq UNQUALIFIED25Bernardo Dominic
1019Deepesh B GauchoItaly2024-06-15Truhlar And Truhlar Attys NEGOTIATION88Xuxue Feng
1020Juan E MaletArgentina2024-06-08Rousseaux, Michael Esq QUALIFIED89Asiya Javayant
1021Maria I StockhamGermany2024-06-24Rousseaux, Michael Esq RENEWAL97Elwin Sharvill
1022Morrow V WhobreyArgentina2024-06-08Morlong Associates PROPOSAL66Stephen Shaw
1023Costa A WieserRussia2024-06-08Benton, John B Jr UNQUALIFIED28Xuxue Feng
1024Cody W StensethCanada2024-05-29Buckley Miller Wright UNQUALIFIED95Asiya Javayant
1025Jeanfrancois U NestleIndia2024-06-07Chapman, Ross E Esq NEGOTIATION71Ioni Bowcher
1026Darci L InouyeAustralia2024-06-17Chemel, James L Cpa QUALIFIED4Ivan Magalhaes
1027Deepesh J RimSpain2024-06-04Printing Dimensions UNQUALIFIED21Stephen Shaw
1028Leon S MaletGermany2024-06-11Morlong Associates RENEWAL10Xuxue Feng
1029Deepesh I StockhamArgentina2024-06-22Benton, John B Jr NEGOTIATION86Stephen Shaw
1030Darci N AlbaresJapan2024-06-24Buckley Miller Wright QUALIFIED93Ivan Magalhaes
1031Jennifer Q AmigonFrance2024-06-09Buckley Miller Wright QUALIFIED80Asiya Javayant
1032Jennifer Y VenereFrance2024-06-03Chanay, Jeffrey A Esq RENEWAL38Asiya Javayant
1033Emily T WhobreyGermany2024-06-17Chapman, Ross E Esq UNQUALIFIED49Amy Elsner
1034Wickens K SchemmerCanada2024-06-23Dorl, James J Esq NEGOTIATION68Stephen Shaw
1035Smith V GillianCanada2024-05-29Rousseaux, Michael Esq NEGOTIATION70Elwin Sharvill
1036James R SchemmerBrazil2024-06-08Commercial Press PROPOSAL76Ivan Magalhaes
1037Ivar J OstroskyCanada2024-06-23Chemel, James L Cpa RENEWAL82Onyama Limba
1038Rodrigues O TollnerSpain2024-06-18Rousseaux, Michael Esq RENEWAL17Bernardo Dominic
1039Octavia Z CaldareraUnited Kingdom2024-06-11Rousseaux, Michael Esq UNQUALIFIED39Xuxue Feng
1040Greenwood X MarrierAustralia2024-06-07Commercial Press QUALIFIED91Ivan Magalhaes
1041Chavez Q GillianJapan2024-06-11Commercial Press UNQUALIFIED15Onyama Limba
1042Izzy W MarrierGermany2024-06-23Dorl, James J Esq PROPOSAL93Onyama Limba
1043Jennifer F ChuiUnited Kingdom2024-06-05Truhlar And Truhlar Attys NEGOTIATION74Ioni Bowcher
1044David O StensethCanada2024-06-14Commercial Press NEGOTIATION5Elwin Sharvill
1045James X CampainSpain2024-05-29Commercial Press NEW93Ivan Magalhaes
1046Cody P FollerFrance2024-06-13Commercial Press NEGOTIATION6Elwin Sharvill
1047Rodrigues L AlbaresFrance2024-06-21Rousseaux, Michael Esq PROPOSAL27Asiya Javayant
1048Nicolas L IturbideRussia2024-06-21Feltz Printing Service UNQUALIFIED66Anna Fali
1049Octavia D SchemmerRussia2024-06-22Rangoni Of Florence NEW1Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Emily O RulapaughBrazilAsiya Javayant QUALIFIED
Claire Z RutaSpainStephen Shaw RENEWAL
Jefferson G SaylorsUnited KingdomAnna Fali NEGOTIATION
Julie M MarrierIndiaAmy Elsner UNQUALIFIED
Salvatore V PaprockiSpainAmy Elsner NEW
Johnson B SaylorsItalyAsiya Javayant PROPOSAL
Antonio V FlosiRussiaIoni Bowcher NEGOTIATION
Munro C NestleFranceIvan Magalhaes QUALIFIED
Smith M PoquetteJapanOnyama Limba PROPOSAL
Misaki I MorascaItalyStephen Shaw RENEWAL
Jones X VocelkaFranceBernardo Dominic NEW
Morrow U AlbaresUnited KingdomAsiya Javayant NEGOTIATION
Jones U MaletJapanIoni Bowcher NEGOTIATION
Faith D PaprockiCanadaBernardo Dominic UNQUALIFIED
Emily P SergiItalyIvan Magalhaes RENEWAL
Costa C TollnerSpainOnyama Limba NEW
Alejandro R MaletGermanyStephen Shaw RENEWAL
Julie W VenereRussiaIoni Bowcher NEW
David R NickaItalyAmy Elsner NEGOTIATION
Adams R PoquetteBrazilAmy Elsner NEW
Arvin E ShinkoRussiaBernardo Dominic NEW
Aika I IturbideCanadaAmy Elsner RENEWAL
Nicolas N PerinAustraliaAmy Elsner QUALIFIED
Ivar K ShinkoArgentinaIvan Magalhaes NEGOTIATION
Isabel J WaycottBrazilIoni Bowcher QUALIFIED
Izzy N MaletArgentinaAmy Elsner NEW
Wickens N PoquetteCanadaXuxue Feng NEGOTIATION
Julie W SchemmerUnited KingdomXuxue Feng NEGOTIATION
Izzy X IturbideArgentinaIvan Magalhaes UNQUALIFIED
Kadeem R RulapaughGermanyAnna Fali UNQUALIFIED
Maria L ShinkoIndiaBernardo Dominic PROPOSAL
Ivar K OstroskySpainStephen Shaw PROPOSAL
Cody X MacleadCanadaOnyama Limba UNQUALIFIED
Chavez H ShinkoUnited KingdomAsiya Javayant NEGOTIATION
Alejandro C PoquetteGermanyElwin Sharvill NEW
Leon K ShinkoItalyElwin Sharvill NEW
Murillo W FerenczBrazilAsiya Javayant NEGOTIATION
Murillo D KolmetzItalyIoni Bowcher NEW
Jeanfrancois Q GauchoAustraliaIvan Magalhaes UNQUALIFIED
Ivar H IturbideIndiaBernardo Dominic QUALIFIED
Juan K CaudyJapanElwin Sharvill QUALIFIED
Misaki C InouyeItalyIoni Bowcher QUALIFIED
Aika U MacleadSpainAnna Fali PROPOSAL
Jeanfrancois F StensethArgentinaIvan Magalhaes RENEWAL
Emily V WhobreyFranceIoni Bowcher NEGOTIATION
Faith F MacleadCanadaOnyama Limba QUALIFIED
Emily B RulapaughGermanyBernardo Dominic NEGOTIATION
Costa M FollerUnited KingdomAnna Fali QUALIFIED
David T WaycottRussiaAmy Elsner NEGOTIATION
Cody U VenereUnited KingdomAsiya Javayant NEW
Frozen Columns
Name
Jones F Rulapaugh
Faith I Gaucho
Faith T Royster
David Z Briddick
Jones F Gillian
Stacey M Oldroyd
Jefferson B Figeroa
Wickens V Dilliard
Kaitlin S Campain
Aika F Stockham
Aruna O Albares
Kadeem W Oldroyd
Leja M Caudy
Jefferson D Dilliard
Kadeem F Saylors
Alejandro D Slusarski
James M Kolmetz
Francesco W Albares
Munro S Inouye
Jennifer R Foller
Aika N Garufi
Arvin A Ruta
Emily Y Gillian
Greenwood J Slusarski
Jefferson R Briddick
Leja W Doe
Mayumi F Nestle
Murillo L Figeroa
Aika X Paprocki
Silvio O Waycott
Leon X Schemmer
Isabel C Wieser
Clifford T Kolmetz
Misaki S Caudy
Salvatore D Saylors
Silvio S Foller
Julie F Malet
Juan W Iturbide
Kaitlin S Ostrosky
David Z Caudy
Deepesh T Doe
Jennifer I Waycott
Munro B Slusarski
Wickens L Dilliard
Emily N Kolmetz
Stacey B Ruta
Aruna H Briddick
Deepesh X Butt
Aditya M Iturbide
Aika E Butt
IdCountryDate
1000Japan2024-05-30
1001Germany2024-06-01
1002France2024-06-19
1003Spain2024-06-15
1004France2024-06-04
1005Italy2024-06-05
1006Australia2024-06-02
1007Germany2024-06-16
1008Australia2024-06-19
1009India2024-06-07
1010Australia2024-06-15
1011Canada2024-06-08
1012France2024-06-01
1013Germany2024-06-19
1014France2024-05-26
1015India2024-06-19
1016Argentina2024-06-06
1017Japan2024-05-29
1018Japan2024-06-01
1019Australia2024-06-08
1020Brazil2024-06-06
1021Brazil2024-06-18
1022Italy2024-06-01
1023Russia2024-06-05
1024France2024-05-28
1025Argentina2024-06-01
1026Italy2024-05-28
1027Brazil2024-06-15
1028United Kingdom2024-06-09
1029Australia2024-06-03
1030Australia2024-06-05
1031Canada2024-06-14
1032India2024-06-03
1033Canada2024-05-29
1034Japan2024-06-09
1035Spain2024-05-28
1036Italy2024-06-16
1037Brazil2024-06-12
1038France2024-06-12
1039Brazil2024-05-31
1040India2024-06-09
1041Brazil2024-06-04
1042Australia2024-05-29
1043Brazil2024-06-12
1044France2024-06-22
1045Australia2024-06-03
1046Russia2024-06-24
1047Japan2024-05-26
1048Spain2024-06-14
1049Brazil2024-06-23

On-Demand Data

NameIdCountryDate
Faith D Morasca1000Japan2024-05-27
Leon A Ostrosky1001Germany2024-05-28
Cody Y Ruta1002Japan2024-06-09
Mujtaba J Oldroyd1003Australia2024-05-28
Octavia U Tollner1004Brazil2024-06-17
Juan I Shinko1005Canada2024-05-31
Jeanfrancois K Vocelka1006Canada2024-06-13
Deepesh O Ostrosky1007Germany2024-05-29
Cody V Shinko1008United Kingdom2024-06-04
Silvio L Oldroyd1009Brazil2024-06-08
David V Oldroyd1010France2024-06-13
Cody D Maclead1011Spain2024-06-01
Isabel U Tollner1012France2024-05-28
Adams O Royster1013Russia2024-05-27
Leja O Glick1014Australia2024-06-11
Sinclair O Tollner1015Brazil2024-06-23
Aruna S Royster1016Spain2024-06-16
Nicolas Q Royster1017France2024-06-17
Clifford N Briddick1018Argentina2024-05-31
Maria T Gaucho1019Germany2024-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan M InouyeIndiaXuxue Feng NEW
Misaki C NestleUnited KingdomElwin Sharvill NEW
Silvio K AmigonFranceElwin Sharvill NEW
Munro K MacleadRussiaAnna Fali RENEWAL
Greenwood T CaudyUnited KingdomAsiya Javayant NEGOTIATION
Stacey F PaprockiFranceElwin Sharvill NEW
Adams M BologniaItalyIoni Bowcher QUALIFIED
Morrow T BriddickBrazilStephen Shaw NEGOTIATION
Costa K FlosiSpainIvan Magalhaes RENEWAL
Kadeem A FlosiRussiaElwin Sharvill RENEWAL
Aika L PaprockiIndiaAsiya Javayant QUALIFIED
Misaki F VocelkaJapanIvan Magalhaes NEGOTIATION
Clifford P SaylorsUnited KingdomStephen Shaw RENEWAL
Darci X DoeArgentinaIvan Magalhaes UNQUALIFIED
Octavia A DilliardItalyIoni Bowcher RENEWAL
Aditya Q DilliardFranceXuxue Feng PROPOSAL
Morrow W RimRussiaIvan Magalhaes RENEWAL
Aruna V ChuiFranceBernardo Dominic PROPOSAL
Jefferson V TollnerAustraliaXuxue Feng NEGOTIATION
Kadeem Y IturbideRussiaIoni Bowcher PROPOSAL
Mujtaba V PoquetteFranceBernardo Dominic NEGOTIATION
Chavez D WhobreyCanadaElwin Sharvill QUALIFIED
Maria K BologniaSpainIoni Bowcher QUALIFIED
Murillo B FigeroaUnited KingdomAnna Fali UNQUALIFIED
Nicolas K WieserCanadaAsiya Javayant PROPOSAL
Maisha M BowleyAustraliaXuxue Feng NEW
Julie M PaprockiJapanAnna Fali UNQUALIFIED
Jones P SchemmerGermanyStephen Shaw QUALIFIED
Darci T StockhamSpainOnyama Limba QUALIFIED
Leon C DilliardFranceElwin Sharvill UNQUALIFIED
Cody G DilliardBrazilIvan Magalhaes RENEWAL
Juan G WhobreyFranceBernardo Dominic RENEWAL
Tony F FigeroaJapanAmy Elsner NEW
Juan X GlickRussiaStephen Shaw PROPOSAL
Mayumi H GlickSpainBernardo Dominic QUALIFIED
Ivar D FollerAustraliaIvan Magalhaes NEW
Ivar N InouyeFranceAsiya Javayant NEGOTIATION
Silvio O GlickIndiaStephen Shaw PROPOSAL
Alejandro Y CaldareraItalyAsiya Javayant QUALIFIED
Juan V PerinFranceXuxue Feng 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>