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
Leon L StensethRussiaAnna Fali NEW
Rodrigues Y RimItalyAsiya Javayant RENEWAL
Alejandro Y ChuiRussiaAmy Elsner RENEWAL
Munro S GlickRussiaStephen Shaw UNQUALIFIED
Tony Y NestleIndiaAmy Elsner UNQUALIFIED
Ricardo O CampainIndiaStephen Shaw RENEWAL
Octavia J AmigonAustraliaIoni Bowcher QUALIFIED
Salvatore Q GarufiFranceStephen Shaw RENEWAL
Murillo E BriddickIndiaBernardo Dominic QUALIFIED
Juan F GauchoArgentinaAsiya Javayant RENEWAL
Emily J MorascaAustraliaStephen Shaw PROPOSAL
Munro T RutaBrazilXuxue Feng NEGOTIATION
Ricardo H MarrierArgentinaXuxue Feng UNQUALIFIED
Nicolas X PerinUnited KingdomIoni Bowcher RENEWAL
Aika G RutaSpainAmy Elsner PROPOSAL
Jennifer X MorascaUnited KingdomOnyama Limba UNQUALIFIED
Izzy P NickaArgentinaAnna Fali PROPOSAL
Ashley F TollnerBrazilStephen Shaw PROPOSAL
Jones F MacleadUnited KingdomXuxue Feng NEGOTIATION
Mayumi Q SlusarskiArgentinaBernardo Dominic UNQUALIFIED
Misaki M RoysterCanadaIvan Magalhaes UNQUALIFIED
Jeanfrancois E StockhamGermanyXuxue Feng NEW
Adams W BologniaBrazilIoni Bowcher QUALIFIED
Faith G KuskoAustraliaStephen Shaw NEW
Jefferson Y GarufiBrazilAsiya Javayant UNQUALIFIED
Jeanfrancois X RulapaughIndiaAnna Fali RENEWAL
Tony G FigeroaArgentinaIoni Bowcher NEW
Mayumi Z PerinFranceBernardo Dominic NEW
Clifford F MarrierGermanyIvan Magalhaes NEGOTIATION
David R SaylorsCanadaXuxue Feng UNQUALIFIED
Sinclair V IturbideGermanyAnna Fali RENEWAL
Costa I NickaGermanyAnna Fali QUALIFIED
Cody F MaletFranceAsiya Javayant NEGOTIATION
Silvio Q StensethGermanyElwin Sharvill PROPOSAL
Johnson M ButtIndiaAmy Elsner NEGOTIATION
Aditya D NickaRussiaIvan Magalhaes PROPOSAL
Salvatore O DarakjyArgentinaAsiya Javayant UNQUALIFIED
Silvio K GillianGermanyIvan Magalhaes RENEWAL
Alejandro N TollnerJapanIvan Magalhaes NEGOTIATION
Claire K IturbideArgentinaIvan Magalhaes PROPOSAL
Aruna E MaletBrazilAmy Elsner PROPOSAL
Adams K GlickGermanyStephen Shaw RENEWAL
Izzy G GlickRussiaStephen Shaw NEGOTIATION
Mujtaba C SaylorsJapanXuxue Feng NEGOTIATION
Jennifer H DoeGermanyXuxue Feng NEW
Leja O CaudyGermanyElwin Sharvill RENEWAL
Deepesh F BowleyArgentinaElwin Sharvill NEGOTIATION
Aditya U PoquetteRussiaOnyama Limba NEW
Maria P ButtItalyIvan Magalhaes PROPOSAL
Wickens I TollnerIndiaElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Aruna H RimAustraliaStephen Shaw PROPOSAL
Antonio E PerinArgentinaAmy Elsner PROPOSAL
Ricardo P GillianRussiaXuxue Feng NEW
Rodrigues Q RulapaughGermanyStephen Shaw RENEWAL
David Y MorascaRussiaElwin Sharvill UNQUALIFIED
Nicolas W PaprockiIndiaOnyama Limba QUALIFIED
Wickens W FerenczRussiaOnyama Limba QUALIFIED
Claire G MorascaBrazilIoni Bowcher PROPOSAL
Ashley E GarufiAustraliaAnna Fali QUALIFIED
Clifford U GillianArgentinaIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David S CampainAustralia2024-05-31Benton, John B Jr QUALIFIED30Ioni Bowcher
1001Jennifer X VenereArgentina2024-06-18Truhlar And Truhlar Attys UNQUALIFIED80Bernardo Dominic
1002Clifford E CampainIndia2024-05-29Morlong Associates RENEWAL8Anna Fali
1003Smith T StensethIndia2024-06-14Feltz Printing Service RENEWAL87Stephen Shaw
1004Kaitlin F WhobreyGermany2024-05-30Chanay, Jeffrey A Esq PROPOSAL87Bernardo Dominic
1005Chavez M PaprockiRussia2024-06-23Truhlar And Truhlar Attys UNQUALIFIED12Stephen Shaw
1006Maria L AmigonGermany2024-05-27Printing Dimensions NEW76Ivan Magalhaes
1007Kaitlin B GauchoJapan2024-05-31King, Christopher A Esq NEGOTIATION65Xuxue Feng
1008Alejandro S MarrierUnited Kingdom2024-06-12Feltz Printing Service NEW55Onyama Limba
1009Nicolas E SlusarskiRussia2024-05-26Truhlar And Truhlar Attys NEW11Onyama Limba
1010Darci L RulapaughSpain2024-05-30Chanay, Jeffrey A Esq UNQUALIFIED83Anna Fali
1011Alejandro R SaylorsRussia2024-06-13Chemel, James L Cpa NEW51Bernardo Dominic
1012Juan E PoquetteGermany2024-05-30Morlong Associates NEGOTIATION6Xuxue Feng
1013Antonio A WieserJapan2024-06-11Benton, John B Jr NEGOTIATION51Ivan Magalhaes
1014Maisha L OstroskyAustralia2024-06-19Benton, John B Jr UNQUALIFIED55Stephen Shaw
1015Jones O CaldareraGermany2024-05-30Truhlar And Truhlar Attys NEGOTIATION85Asiya Javayant
1016Nicolas M DoeArgentina2024-06-06Commercial Press PROPOSAL38Xuxue Feng
1017Stacey N KolmetzFrance2024-06-05Dorl, James J Esq QUALIFIED60Onyama Limba
1018Leon Q DoeRussia2024-06-05Feltz Printing Service PROPOSAL59Anna Fali
1019Juan Z CampainRussia2024-06-12Rousseaux, Michael Esq NEW21Anna Fali
1020Jennifer T IturbideCanada2024-06-22Chapman, Ross E Esq NEW32Elwin Sharvill
1021Cody V GarufiFrance2024-06-15King, Christopher A Esq PROPOSAL98Onyama Limba
1022Juan F GarufiCanada2024-06-23Chanay, Jeffrey A Esq QUALIFIED62Elwin Sharvill
1023Leja C CaldareraGermany2024-06-17Truhlar And Truhlar Attys UNQUALIFIED63Ioni Bowcher
1024Misaki P IturbideFrance2024-06-22Feltz Printing Service NEW13Elwin Sharvill
1025Morrow U MacleadUnited Kingdom2024-06-20Chanay, Jeffrey A Esq NEGOTIATION38Xuxue Feng
1026Jefferson C BologniaBrazil2024-05-27Chanay, Jeffrey A Esq PROPOSAL50Anna Fali
1027Stacey H SaylorsItaly2024-06-18Benton, John B Jr UNQUALIFIED90Elwin Sharvill
1028Octavia L WaycottAustralia2024-05-29Chapman, Ross E Esq QUALIFIED45Bernardo Dominic
1029Salvatore B KuskoSpain2024-06-09Morlong Associates PROPOSAL34Bernardo Dominic
1030Deepesh W PerinFrance2024-06-23Morlong Associates UNQUALIFIED33Stephen Shaw
1031Johnson T SaylorsJapan2024-06-17Printing Dimensions NEGOTIATION35Asiya Javayant
1032Maria U DilliardArgentina2024-06-06Truhlar And Truhlar Attys NEW88Elwin Sharvill
1033Jeanfrancois R KolmetzIndia2024-05-26Commercial Press NEGOTIATION58Amy Elsner
1034Francesco V FerenczIndia2024-05-28Rousseaux, Michael Esq PROPOSAL47Anna Fali
1035Stacey A KolmetzSpain2024-06-08Benton, John B Jr UNQUALIFIED1Anna Fali
1036Munro Y MacleadJapan2024-06-19Benton, John B Jr UNQUALIFIED43Xuxue Feng
1037Ricardo X KolmetzRussia2024-05-28Printing Dimensions UNQUALIFIED83Onyama Limba
1038Johnson O GlickJapan2024-06-24King, Christopher A Esq QUALIFIED40Ivan Magalhaes
1039Greenwood D StockhamArgentina2024-06-05Chemel, James L Cpa NEGOTIATION70Xuxue Feng
1040Julie W BriddickSpain2024-05-29Feiner Bros NEW3Onyama Limba
1041Jeanfrancois B FollerGermany2024-05-31Chanay, Jeffrey A Esq NEGOTIATION95Ivan Magalhaes
1042Jennifer X MorascaSpain2024-06-02Morlong Associates NEW90Onyama Limba
1043Aditya W DilliardArgentina2024-06-02Commercial Press NEW8Anna Fali
1044Salvatore N WhobreyUnited Kingdom2024-06-05Rangoni Of Florence PROPOSAL65Amy Elsner
1045Darci F VocelkaAustralia2024-06-22Commercial Press UNQUALIFIED26Ioni Bowcher
1046Maria G MorascaFrance2024-06-17Feltz Printing Service NEW23Anna Fali
1047Mayumi A AlbaresUnited Kingdom2024-06-20Buckley Miller Wright NEW44Asiya Javayant
1048Rodrigues T MaletGermany2024-05-29Feiner Bros PROPOSAL30Bernardo Dominic
1049Juan Q VocelkaCanada2024-06-07Benton, John B Jr UNQUALIFIED40Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Aruna R SlusarskiItalyAmy Elsner NEGOTIATION
Jennifer I SchemmerJapanAmy Elsner NEW
Costa P CampainFranceIoni Bowcher RENEWAL
Mayumi P PerinAustraliaBernardo Dominic RENEWAL
Darci O GlickSpainBernardo Dominic RENEWAL
Jones Q IturbideAustraliaElwin Sharvill PROPOSAL
Sinclair Y DilliardJapanIoni Bowcher NEGOTIATION
Murillo I GauchoIndiaXuxue Feng RENEWAL
Jones L DoeAustraliaIoni Bowcher PROPOSAL
David T SchemmerBrazilXuxue Feng RENEWAL
Smith K ButtItalyAsiya Javayant NEW
Leja Y CaldareraSpainIvan Magalhaes QUALIFIED
Kaitlin C GauchoJapanAmy Elsner UNQUALIFIED
James D FerenczFranceStephen Shaw NEW
Claire K FlosiSpainAmy Elsner PROPOSAL
Mayumi V BriddickArgentinaIvan Magalhaes PROPOSAL
Misaki N DilliardGermanyElwin Sharvill RENEWAL
Ricardo P TollnerAustraliaIoni Bowcher UNQUALIFIED
David Q OstroskyAustraliaElwin Sharvill UNQUALIFIED
Adams F MaletItalyOnyama Limba PROPOSAL
Ashley A RimFranceAmy Elsner UNQUALIFIED
Izzy C WaycottUnited KingdomBernardo Dominic NEW
Jones U SlusarskiFranceElwin Sharvill QUALIFIED
Murillo Z KuskoBrazilAmy Elsner PROPOSAL
Jennifer S DoeSpainBernardo Dominic NEW
Sinclair Y VocelkaArgentinaAsiya Javayant NEW
Silvio W MacleadRussiaStephen Shaw NEW
James H AmigonGermanyIvan Magalhaes UNQUALIFIED
Leon F ChuiItalyAsiya Javayant QUALIFIED
Murillo O PerinAustraliaStephen Shaw UNQUALIFIED
Mayumi B WaycottArgentinaAnna Fali PROPOSAL
Octavia P PoquetteFranceAnna Fali QUALIFIED
Silvio F MorascaGermanyStephen Shaw NEGOTIATION
Faith V CaudyCanadaStephen Shaw PROPOSAL
Johnson H MaletCanadaBernardo Dominic UNQUALIFIED
Faith G ShinkoIndiaAsiya Javayant RENEWAL
Leja Z DarakjyItalyOnyama Limba UNQUALIFIED
Greenwood S DarakjyUnited KingdomStephen Shaw QUALIFIED
Aika P OstroskyArgentinaOnyama Limba PROPOSAL
Maisha A BologniaRussiaBernardo Dominic PROPOSAL
Chavez Y MorascaSpainAmy Elsner QUALIFIED
Jeanfrancois K ButtRussiaOnyama Limba NEW
Arvin U OldroydRussiaBernardo Dominic PROPOSAL
Salvatore E GauchoGermanyXuxue Feng QUALIFIED
Clifford O FollerAustraliaElwin Sharvill PROPOSAL
Morrow R DarakjyJapanAsiya Javayant RENEWAL
Isabel Z VenereBrazilStephen Shaw RENEWAL
Sinclair F BologniaBrazilXuxue Feng QUALIFIED
Nicolas C AlbaresGermanyIoni Bowcher QUALIFIED
Maria L FollerArgentinaAnna Fali RENEWAL
Frozen Columns
Name
Cody T Figeroa
Smith G Stenseth
Nicolas L Doe
Adams K Wieser
Salvatore S Oldroyd
Cody F Morasca
Chavez N Shinko
Sinclair X Waycott
Izzy W Paprocki
Silvio P Oldroyd
Kadeem G Poquette
Kaitlin W Vocelka
Kadeem Q Doe
Greenwood S Rulapaugh
Kadeem O Perin
Ricardo L Amigon
Clifford Z Rim
Kaitlin H Caldarera
Aruna K Iturbide
Ricardo T Maclead
Isabel K Caldarera
Misaki J Malet
Sinclair R Ruta
Jefferson C Ostrosky
Costa G Campain
Izzy T Wieser
Rodrigues X Caldarera
Alejandro T Oldroyd
Tony P Caldarera
Salvatore F Vocelka
Maisha J Maclead
James A Rulapaugh
Izzy U Malet
Jeanfrancois F Nicka
Leja B Vocelka
Smith C Royster
Costa T Kusko
Aruna G Flosi
Deepesh T Bowley
Arvin K Malet
Chavez B Kolmetz
Arvin N Butt
Aditya U Ostrosky
Jefferson R Vocelka
Clifford D Gaucho
Adams I Paprocki
Antonio V Stockham
James O Glick
David C Bolognia
Munro L Kolmetz
IdCountryDate
1000Brazil2024-06-19
1001France2024-06-14
1002Germany2024-06-22
1003Germany2024-06-21
1004United Kingdom2024-06-22
1005Italy2024-06-24
1006Germany2024-06-21
1007Japan2024-06-22
1008France2024-05-26
1009Germany2024-06-01
1010Japan2024-06-08
1011Germany2024-06-05
1012Russia2024-06-04
1013Argentina2024-06-22
1014Canada2024-06-06
1015India2024-06-12
1016India2024-05-29
1017Italy2024-06-09
1018India2024-06-07
1019France2024-05-28
1020France2024-06-10
1021Australia2024-06-03
1022Germany2024-05-26
1023Brazil2024-06-17
1024Brazil2024-06-19
1025Brazil2024-05-31
1026Russia2024-05-26
1027India2024-05-29
1028Argentina2024-05-30
1029Canada2024-06-24
1030Italy2024-05-28
1031France2024-06-20
1032Australia2024-05-27
1033United Kingdom2024-06-08
1034Italy2024-06-02
1035Germany2024-06-21
1036France2024-06-16
1037Russia2024-06-04
1038Japan2024-06-18
1039Canada2024-06-17
1040Japan2024-06-11
1041France2024-05-30
1042Italy2024-05-29
1043Brazil2024-06-07
1044Japan2024-06-20
1045Australia2024-05-31
1046Germany2024-06-02
1047Germany2024-06-08
1048Japan2024-06-06
1049Italy2024-06-11

On-Demand Data

NameIdCountryDate
James C Schemmer1000Spain2024-05-27
Deepesh Z Briddick1001United Kingdom2024-06-06
Izzy J Campain1002Germany2024-05-27
Sinclair F Poquette1003Spain2024-06-12
Greenwood K Whobrey1004India2024-06-13
Julie M Inouye1005Russia2024-06-01
Leja L Sergi1006Italy2024-06-18
Chavez E Caudy1007Brazil2024-06-16
Mayumi N Morasca1008Germany2024-06-02
Misaki J Chui1009Argentina2024-05-26
Octavia J Bolognia1010Brazil2024-06-17
Isabel B Malet1011Germany2024-06-08
Jones X Stenseth1012Brazil2024-06-08
Smith P Butt1013Italy2024-06-19
Mayumi Y Sergi1014Spain2024-05-29
Maisha R Tollner1015Spain2024-05-29
Jefferson S Darakjy1016Germany2024-06-06
Misaki V Dilliard1017India2024-06-04
Kaitlin H Inouye1018Spain2024-06-24
Jones T Rulapaugh1019Canada2024-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore F RutaIndiaIoni Bowcher QUALIFIED
Darci J GlickFranceElwin Sharvill QUALIFIED
Izzy A GillianGermanyAsiya Javayant PROPOSAL
Leon E ButtAustraliaElwin Sharvill RENEWAL
Greenwood Y GlickRussiaAnna Fali QUALIFIED
Deepesh G GlickAustraliaIoni Bowcher PROPOSAL
Juan P GlickAustraliaXuxue Feng PROPOSAL
Maria J MorascaGermanyBernardo Dominic NEW
Smith Q SaylorsItalyStephen Shaw NEW
Juan F DarakjyBrazilAnna Fali QUALIFIED
Aditya C AmigonGermanyElwin Sharvill PROPOSAL
Kaitlin H FlosiSpainAsiya Javayant PROPOSAL
Misaki X CaldareraSpainOnyama Limba UNQUALIFIED
Alejandro K InouyeJapanAnna Fali RENEWAL
Arvin S PaprockiGermanyOnyama Limba NEGOTIATION
Murillo M TollnerArgentinaAmy Elsner NEW
Smith X TollnerBrazilStephen Shaw PROPOSAL
Octavia T WaycottItalyAmy Elsner PROPOSAL
Adams T FlosiAustraliaOnyama Limba RENEWAL
James J OldroydItalyAmy Elsner PROPOSAL
Aditya W OstroskyIndiaStephen Shaw PROPOSAL
Silvio Y BriddickFranceXuxue Feng NEGOTIATION
Darci I StensethFranceIvan Magalhaes UNQUALIFIED
Leon A FollerJapanIoni Bowcher RENEWAL
Ashley X AmigonAustraliaElwin Sharvill PROPOSAL
Isabel T RimFranceStephen Shaw QUALIFIED
Jefferson M FlosiRussiaBernardo Dominic NEW
Ashley S FerenczArgentinaStephen Shaw NEGOTIATION
Maria Q ChuiCanadaStephen Shaw QUALIFIED
Izzy T SlusarskiUnited KingdomBernardo Dominic RENEWAL
Kadeem Q BologniaUnited KingdomElwin Sharvill UNQUALIFIED
Greenwood K WaycottBrazilElwin Sharvill NEW
David I RulapaughBrazilElwin Sharvill QUALIFIED
Izzy A KolmetzCanadaOnyama Limba NEGOTIATION
Isabel J ButtSpainOnyama Limba UNQUALIFIED
Jeanfrancois G FigeroaAustraliaAsiya Javayant QUALIFIED
Aruna P OldroydAustraliaXuxue Feng NEW
Sinclair U NestleBrazilXuxue Feng NEW
Nicolas H SlusarskiGermanyAmy Elsner UNQUALIFIED
Mujtaba H NestleFranceBernardo 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>