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
Isabel E CaudyUnited KingdomOnyama Limba QUALIFIED
Morrow K ChuiFranceStephen Shaw NEGOTIATION
Misaki F VocelkaCanadaAnna Fali UNQUALIFIED
Isabel A GlickJapanAmy Elsner RENEWAL
Clifford D DarakjyBrazilBernardo Dominic PROPOSAL
Sinclair Y CaudyAustraliaXuxue Feng NEGOTIATION
Costa W IturbideItalyAmy Elsner NEGOTIATION
David L SaylorsIndiaOnyama Limba RENEWAL
Mujtaba U WaycottBrazilBernardo Dominic RENEWAL
Arvin L OldroydSpainIvan Magalhaes PROPOSAL
Jones E StockhamSpainIvan Magalhaes PROPOSAL
Jefferson A FlosiArgentinaOnyama Limba QUALIFIED
Munro O GauchoJapanIoni Bowcher NEGOTIATION
Wickens R MaletRussiaIvan Magalhaes RENEWAL
Murillo Y GlickAustraliaElwin Sharvill QUALIFIED
Juan W BriddickItalyIvan Magalhaes RENEWAL
Aika I PaprockiGermanyAnna Fali RENEWAL
Johnson Y WieserSpainAsiya Javayant NEGOTIATION
Arvin Y DilliardUnited KingdomAmy Elsner UNQUALIFIED
Jefferson U WaycottUnited KingdomIoni Bowcher PROPOSAL
Isabel U CaldareraCanadaIvan Magalhaes UNQUALIFIED
James Y CaudyRussiaAsiya Javayant RENEWAL
Darci S SergiUnited KingdomStephen Shaw UNQUALIFIED
Tony U VocelkaIndiaElwin Sharvill NEGOTIATION
Salvatore I KuskoCanadaAsiya Javayant QUALIFIED
Claire C SlusarskiUnited KingdomAmy Elsner NEGOTIATION
Stacey Z CampainIndiaAmy Elsner RENEWAL
Octavia G KolmetzRussiaAnna Fali UNQUALIFIED
Leja B IturbideIndiaElwin Sharvill NEGOTIATION
Mujtaba K FlosiUnited KingdomIoni Bowcher RENEWAL
Emily Z BriddickRussiaOnyama Limba PROPOSAL
Izzy H MaletGermanyStephen Shaw UNQUALIFIED
Antonio A NickaJapanOnyama Limba NEGOTIATION
Kadeem V IturbideFranceElwin Sharvill NEW
Greenwood C RutaJapanAsiya Javayant PROPOSAL
Isabel V SergiSpainIoni Bowcher NEW
Clifford X RulapaughUnited KingdomIoni Bowcher NEW
Greenwood W BowleyGermanyAsiya Javayant PROPOSAL
Francesco T MarrierJapanOnyama Limba PROPOSAL
Nicolas L OldroydFranceOnyama Limba UNQUALIFIED
Mujtaba A GlickArgentinaStephen Shaw PROPOSAL
Clifford E StensethGermanyXuxue Feng NEGOTIATION
Cody Q AmigonSpainAmy Elsner PROPOSAL
Leja B GillianIndiaAsiya Javayant PROPOSAL
Jones V GarufiArgentinaAnna Fali QUALIFIED
Emily U SlusarskiCanadaAnna Fali PROPOSAL
Izzy F SaylorsBrazilBernardo Dominic QUALIFIED
Jeanfrancois V ShinkoSpainAsiya Javayant PROPOSAL
Emily F ButtIndiaAsiya Javayant NEGOTIATION
Maisha X PaprockiCanadaOnyama Limba UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Kaitlin H FollerCanadaAsiya Javayant UNQUALIFIED
Ricardo T GarufiJapanBernardo Dominic PROPOSAL
Jefferson K WieserAustraliaOnyama Limba NEW
Rodrigues Q AmigonSpainAsiya Javayant QUALIFIED
Arvin D StensethFranceXuxue Feng NEGOTIATION
Maisha E WhobreyRussiaAnna Fali NEGOTIATION
Jones B CaldareraAustraliaOnyama Limba QUALIFIED
Juan B GarufiSpainIoni Bowcher QUALIFIED
Greenwood Y NestleItalyAmy Elsner PROPOSAL
Mujtaba A GauchoGermanyBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Clifford J RoysterUnited Kingdom2024-05-24Truhlar And Truhlar Attys QUALIFIED70Amy Elsner
1001Kaitlin B GauchoBrazil2024-05-21Morlong Associates NEW7Asiya Javayant
1002Faith N AlbaresAustralia2024-05-25Chemel, James L Cpa QUALIFIED67Ivan Magalhaes
1003Clifford Z VenereGermany2024-04-30King, Christopher A Esq UNQUALIFIED39Onyama Limba
1004Francesco S MacleadUnited Kingdom2024-05-16Rangoni Of Florence NEGOTIATION94Asiya Javayant
1005Leon R ButtAustralia2024-05-03Truhlar And Truhlar Attys UNQUALIFIED33Amy Elsner
1006Kadeem W PoquetteRussia2024-05-18Dorl, James J Esq NEW29Elwin Sharvill
1007Nicolas C AlbaresAustralia2024-05-10Rousseaux, Michael Esq QUALIFIED4Bernardo Dominic
1008Darci L VenereIndia2024-05-13Printing Dimensions RENEWAL43Xuxue Feng
1009Darci I PaprockiAustralia2024-05-21Printing Dimensions RENEWAL64Ivan Magalhaes
1010Isabel L StensethIndia2024-05-14Benton, John B Jr RENEWAL91Elwin Sharvill
1011Ivar G ChuiRussia2024-05-17Chemel, James L Cpa NEW3Amy Elsner
1012Silvio G WaycottAustralia2024-05-12Commercial Press UNQUALIFIED63Asiya Javayant
1013Isabel P PoquetteUnited Kingdom2024-05-08Benton, John B Jr NEW43Xuxue Feng
1014Deepesh V MaletItaly2024-05-10Morlong Associates NEW57Ioni Bowcher
1015Arvin G MorascaIndia2024-05-25Dorl, James J Esq NEGOTIATION84Onyama Limba
1016Adams A SlusarskiGermany2024-05-10Dorl, James J Esq RENEWAL95Bernardo Dominic
1017Smith E DoeArgentina2024-05-09Rousseaux, Michael Esq PROPOSAL9Bernardo Dominic
1018Johnson F ChuiIndia2024-05-12Truhlar And Truhlar Attys RENEWAL51Ivan Magalhaes
1019Rodrigues D SergiFrance2024-05-18Rousseaux, Michael Esq NEW84Stephen Shaw
1020Chavez J CaudyItaly2024-05-01Chapman, Ross E Esq QUALIFIED17Stephen Shaw
1021Clifford S GarufiRussia2024-05-05Chapman, Ross E Esq UNQUALIFIED90Elwin Sharvill
1022Morrow P CampainJapan2024-04-30Chemel, James L Cpa NEGOTIATION61Anna Fali
1023Antonio I GarufiRussia2024-05-19King, Christopher A Esq NEGOTIATION19Anna Fali
1024Kaitlin V FollerAustralia2024-05-07Chemel, James L Cpa QUALIFIED31Xuxue Feng
1025Julie G KolmetzAustralia2024-05-11Benton, John B Jr NEW37Onyama Limba
1026Kaitlin O SaylorsCanada2024-05-19Chemel, James L Cpa NEGOTIATION73Stephen Shaw
1027Julie J RutaAustralia2024-05-25Dorl, James J Esq UNQUALIFIED61Elwin Sharvill
1028Darci W KuskoArgentina2024-05-16Commercial Press PROPOSAL31Xuxue Feng
1029Cody Y StensethJapan2024-04-29Printing Dimensions RENEWAL60Ioni Bowcher
1030Julie D InouyeGermany2024-04-29Feltz Printing Service UNQUALIFIED65Anna Fali
1031Silvio T StockhamIndia2024-05-04Dorl, James J Esq QUALIFIED75Asiya Javayant
1032Maisha P BowleyRussia2024-05-17Chapman, Ross E Esq NEGOTIATION89Xuxue Feng
1033Ashley W KolmetzCanada2024-05-12Benton, John B Jr NEGOTIATION52Onyama Limba
1034Mayumi P CaudyRussia2024-05-05Rangoni Of Florence NEW82Onyama Limba
1035Alejandro M FollerItaly2024-05-25Benton, John B Jr QUALIFIED45Anna Fali
1036Munro K WhobreyRussia2024-05-15King, Christopher A Esq QUALIFIED90Amy Elsner
1037Ricardo C GillianSpain2024-05-11Printing Dimensions QUALIFIED87Ioni Bowcher
1038Ricardo T MacleadArgentina2024-04-29Morlong Associates UNQUALIFIED91Amy Elsner
1039Kaitlin Q VocelkaArgentina2024-05-18King, Christopher A Esq UNQUALIFIED54Ioni Bowcher
1040Sinclair K SaylorsArgentina2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED81Elwin Sharvill
1041Aditya Y MaletRussia2024-05-13Chapman, Ross E Esq QUALIFIED31Bernardo Dominic
1042Mayumi B WaycottGermany2024-05-06Feiner Bros RENEWAL40Elwin Sharvill
1043Sinclair O RulapaughItaly2024-05-18Chemel, James L Cpa QUALIFIED4Elwin Sharvill
1044Greenwood E PerinIndia2024-05-18Chanay, Jeffrey A Esq PROPOSAL51Anna Fali
1045Clifford B FigeroaBrazil2024-05-06Chapman, Ross E Esq PROPOSAL52Xuxue Feng
1046Antonio X WieserRussia2024-05-12Rousseaux, Michael Esq PROPOSAL31Xuxue Feng
1047Jones U MaletFrance2024-05-25Rousseaux, Michael Esq NEW3Bernardo Dominic
1048Ricardo O CampainJapan2024-05-23King, Christopher A Esq UNQUALIFIED10Bernardo Dominic
1049Ashley S WieserCanada2024-05-17Printing Dimensions NEGOTIATION64Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Wickens Y NickaJapanAnna Fali QUALIFIED
Mayumi R VocelkaItalyStephen Shaw QUALIFIED
Maria D BowleyAustraliaElwin Sharvill NEW
Chavez I BowleyCanadaIoni Bowcher QUALIFIED
Costa S DilliardCanadaAsiya Javayant PROPOSAL
Juan V SlusarskiUnited KingdomElwin Sharvill QUALIFIED
Octavia Z WieserBrazilAnna Fali UNQUALIFIED
Aditya F AmigonCanadaAnna Fali UNQUALIFIED
Adams W FlosiUnited KingdomAmy Elsner QUALIFIED
Mujtaba L BowleyBrazilElwin Sharvill NEW
Deepesh B RutaFranceAnna Fali UNQUALIFIED
Izzy Z BologniaIndiaBernardo Dominic PROPOSAL
Smith M DoeJapanBernardo Dominic UNQUALIFIED
Claire I CampainBrazilIvan Magalhaes NEW
Claire S RulapaughBrazilStephen Shaw NEW
Arvin N CaldareraBrazilIvan Magalhaes NEW
Kaitlin P FigeroaAustraliaStephen Shaw UNQUALIFIED
Stacey B SergiCanadaIvan Magalhaes PROPOSAL
Claire Z CaldareraSpainOnyama Limba NEGOTIATION
Ivar M PaprockiRussiaStephen Shaw UNQUALIFIED
Isabel I KuskoItalyStephen Shaw QUALIFIED
David K WhobreyCanadaStephen Shaw QUALIFIED
Kaitlin S GauchoCanadaAmy Elsner NEW
Salvatore P MacleadItalyAmy Elsner UNQUALIFIED
Aruna P MacleadJapanIvan Magalhaes NEGOTIATION
David I InouyeJapanElwin Sharvill RENEWAL
Maisha I SchemmerIndiaIoni Bowcher NEGOTIATION
Izzy A CaldareraArgentinaIvan Magalhaes NEGOTIATION
Jones B FollerArgentinaOnyama Limba QUALIFIED
Greenwood X VocelkaBrazilBernardo Dominic NEGOTIATION
Smith J FlosiUnited KingdomIvan Magalhaes NEGOTIATION
Jeanfrancois A RimSpainXuxue Feng UNQUALIFIED
Cody E StensethCanadaStephen Shaw NEW
Francesco H MaletArgentinaAsiya Javayant PROPOSAL
David T SchemmerRussiaAsiya Javayant PROPOSAL
Leon Q RoysterUnited KingdomAnna Fali UNQUALIFIED
Clifford O FerenczIndiaAmy Elsner QUALIFIED
Greenwood B GlickJapanAnna Fali UNQUALIFIED
Rodrigues L NickaItalyBernardo Dominic QUALIFIED
Izzy R VocelkaItalyElwin Sharvill QUALIFIED
Jefferson N PaprockiAustraliaStephen Shaw NEW
Aika H PaprockiSpainOnyama Limba NEW
Julie D InouyeIndiaStephen Shaw NEW
Johnson Z SaylorsBrazilOnyama Limba NEW
Sinclair S MorascaArgentinaXuxue Feng PROPOSAL
Wickens S PerinCanadaOnyama Limba NEGOTIATION
Leja Y StockhamBrazilBernardo Dominic NEW
Costa K MaletUnited KingdomXuxue Feng QUALIFIED
Smith H SchemmerRussiaIvan Magalhaes RENEWAL
Costa P ButtItalyElwin Sharvill NEW
Frozen Columns
Name
Izzy H Venere
Maisha G Maclead
Johnson Q Kusko
Deepesh I Royster
Leja S Doe
Aditya Y Sergi
Ricardo Q Butt
Alejandro I Venere
Aditya X Ostrosky
Clifford T Rulapaugh
Leja R Butt
Faith Q Gaucho
Maria L Iturbide
Faith M Bowley
Stacey K Gaucho
Jeanfrancois S Gaucho
Claire K Perin
David N Amigon
Tony F Nestle
James K Whobrey
Chavez Q Caudy
Kaitlin D Kolmetz
Isabel Z Caudy
Faith E Whobrey
Antonio E Schemmer
Isabel B Chui
Salvatore X Malet
Misaki U Schemmer
Wickens J Caldarera
James H Gaucho
Octavia P Oldroyd
Julie D Kolmetz
Cody Q Stockham
Tony H Gaucho
Antonio T Dilliard
Faith T Whobrey
Adams D Albares
Antonio A Sergi
Jefferson A Campain
Mayumi N Bowley
Aditya X Gaucho
Leon C Morasca
Faith W Ruta
Julie M Malet
Darci H Maclead
Mujtaba W Caldarera
Rodrigues A Amigon
Tony X Stenseth
Izzy W Briddick
Cody I Stockham
IdCountryDate
1000Canada2024-05-22
1001Australia2024-04-30
1002Germany2024-05-24
1003Spain2024-05-01
1004Russia2024-05-16
1005Canada2024-05-03
1006Russia2024-05-24
1007India2024-05-11
1008Germany2024-05-05
1009Argentina2024-05-15
1010Italy2024-05-03
1011Argentina2024-05-12
1012India2024-05-13
1013Germany2024-05-17
1014Italy2024-04-30
1015Russia2024-05-11
1016Brazil2024-05-21
1017Canada2024-05-15
1018Russia2024-05-12
1019Russia2024-05-27
1020United Kingdom2024-05-07
1021Brazil2024-05-21
1022Australia2024-05-26
1023India2024-05-13
1024Argentina2024-05-10
1025United Kingdom2024-05-21
1026Japan2024-04-28
1027United Kingdom2024-05-15
1028Italy2024-05-25
1029United Kingdom2024-05-02
1030Argentina2024-05-08
1031Brazil2024-04-30
1032Japan2024-05-25
1033Brazil2024-05-25
1034Brazil2024-04-28
1035Japan2024-05-12
1036United Kingdom2024-05-09
1037Argentina2024-05-21
1038India2024-05-12
1039France2024-05-26
1040Italy2024-05-10
1041Italy2024-05-12
1042Argentina2024-05-13
1043Australia2024-05-20
1044France2024-05-22
1045Italy2024-05-18
1046Spain2024-05-14
1047Germany2024-05-14
1048Spain2024-05-03
1049Japan2024-05-18

On-Demand Data

NameIdCountryDate
Misaki Z Paprocki1000Japan2024-04-28
Alejandro O Nicka1001Japan2024-04-28
Juan A Whobrey1002Argentina2024-05-09
Isabel P Paprocki1003Argentina2024-05-05
Sinclair Z Rulapaugh1004Australia2024-05-07
Aditya O Gillian1005Italy2024-05-09
Maisha G Kolmetz1006Germany2024-05-02
Claire H Campain1007Russia2024-05-27
Jefferson P Garufi1008Russia2024-05-27
Wickens E Perin1009Russia2024-05-07
Leja V Saylors1010Argentina2024-05-27
Sinclair I Nicka1011Argentina2024-05-11
Aika D Oldroyd1012Canada2024-05-14
Chavez L Malet1013Japan2024-05-02
Mayumi Z Flosi1014Japan2024-05-24
Leon I Stockham1015Canada2024-05-01
Jennifer B Waycott1016Japan2024-05-15
Smith M Caldarera1017Australia2024-05-02
Cody S Malet1018Russia2024-05-13
Mayumi T Caudy1019Argentina2024-04-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jefferson M BowleyUnited KingdomIvan Magalhaes NEGOTIATION
Silvio W GlickCanadaAnna Fali UNQUALIFIED
Salvatore Z CampainIndiaAmy Elsner UNQUALIFIED
Jefferson D VocelkaUnited KingdomAnna Fali RENEWAL
Aditya E IturbideFranceOnyama Limba RENEWAL
Francesco M FlosiCanadaIoni Bowcher RENEWAL
Murillo Q IturbideCanadaAsiya Javayant QUALIFIED
Wickens V DoeJapanElwin Sharvill NEGOTIATION
Sinclair G AlbaresCanadaAmy Elsner RENEWAL
Ricardo A BologniaAustraliaBernardo Dominic PROPOSAL
Aika K SchemmerArgentinaStephen Shaw QUALIFIED
Antonio R FollerUnited KingdomIvan Magalhaes RENEWAL
Kaitlin S SergiArgentinaStephen Shaw PROPOSAL
Kaitlin J StensethCanadaOnyama Limba NEGOTIATION
Sinclair X StensethJapanXuxue Feng RENEWAL
Tony B GlickCanadaIoni Bowcher RENEWAL
Nicolas J MaletGermanyAnna Fali NEW
Johnson H InouyeRussiaIvan Magalhaes QUALIFIED
Antonio D OstroskyIndiaBernardo Dominic NEGOTIATION
Jeanfrancois P ButtAustraliaStephen Shaw PROPOSAL
Chavez X PaprockiItalyOnyama Limba QUALIFIED
Adams U NickaSpainBernardo Dominic RENEWAL
Julie D RimArgentinaOnyama Limba UNQUALIFIED
Ivar H KolmetzJapanElwin Sharvill NEGOTIATION
Ivar Q NickaCanadaXuxue Feng NEGOTIATION
Clifford C VocelkaArgentinaStephen Shaw PROPOSAL
Izzy Y DarakjySpainIvan Magalhaes NEW
Arvin T CampainBrazilOnyama Limba UNQUALIFIED
Clifford T NestleAustraliaXuxue Feng NEW
Clifford W RoysterRussiaAmy Elsner PROPOSAL
Smith B SchemmerItalyStephen Shaw NEGOTIATION
Antonio Z IturbideSpainAsiya Javayant PROPOSAL
Nicolas X FlosiFranceIoni Bowcher QUALIFIED
Ashley V FollerBrazilIoni Bowcher NEW
Aruna D CaudyRussiaStephen Shaw QUALIFIED
Faith O FlosiAustraliaAsiya Javayant NEGOTIATION
Nicolas F DoeGermanyXuxue Feng NEGOTIATION
Mayumi F KolmetzGermanyOnyama Limba PROPOSAL
Juan C RutaArgentinaIoni Bowcher NEGOTIATION
Johnson E MaletGermanyAmy Elsner NEGOTIATION

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