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
Claire D VenereFranceAsiya Javayant QUALIFIED
Leja P KuskoGermanyStephen Shaw UNQUALIFIED
Claire A FigeroaRussiaAmy Elsner PROPOSAL
Sinclair I AmigonSpainIoni Bowcher PROPOSAL
Johnson Y CaudyAustraliaIoni Bowcher NEW
Wickens T RimBrazilAmy Elsner NEGOTIATION
Jeanfrancois H PaprockiRussiaAnna Fali QUALIFIED
Kaitlin W WaycottCanadaOnyama Limba PROPOSAL
Nicolas E CampainJapanAsiya Javayant QUALIFIED
Tony K KolmetzFranceXuxue Feng RENEWAL
Isabel W SergiUnited KingdomBernardo Dominic RENEWAL
Leon Z GauchoArgentinaAmy Elsner RENEWAL
Clifford P PoquetteAustraliaAmy Elsner NEGOTIATION
Alejandro N CaldareraUnited KingdomStephen Shaw QUALIFIED
Octavia J VenereAustraliaElwin Sharvill PROPOSAL
Aika R FigeroaArgentinaXuxue Feng RENEWAL
Adams H MarrierJapanIoni Bowcher UNQUALIFIED
Aika S BriddickIndiaAmy Elsner NEW
Francesco A PerinRussiaElwin Sharvill RENEWAL
Chavez U StockhamRussiaAmy Elsner NEGOTIATION
Jennifer D FerenczSpainBernardo Dominic NEW
Claire E InouyeAustraliaAsiya Javayant NEW
Sinclair N RutaCanadaOnyama Limba QUALIFIED
Kaitlin N WaycottArgentinaAsiya Javayant PROPOSAL
Silvio U SergiFranceOnyama Limba PROPOSAL
Ricardo L SchemmerBrazilIvan Magalhaes RENEWAL
Chavez Z StockhamAustraliaElwin Sharvill PROPOSAL
Murillo G GauchoJapanAsiya Javayant NEGOTIATION
Jefferson J ChuiAustraliaOnyama Limba NEW
Ricardo K VenereSpainBernardo Dominic NEW
Leja V RutaGermanyAmy Elsner UNQUALIFIED
Maisha L FlosiFranceXuxue Feng UNQUALIFIED
Stacey U RoysterGermanyElwin Sharvill NEGOTIATION
David V BologniaBrazilBernardo Dominic NEW
Stacey B BowleyIndiaIvan Magalhaes NEW
Smith B WaycottIndiaIvan Magalhaes NEGOTIATION
Leon X BowleyGermanyIvan Magalhaes RENEWAL
Jeanfrancois P DarakjyItalyAnna Fali QUALIFIED
Chavez L OldroydCanadaElwin Sharvill RENEWAL
Mayumi Q BowleyArgentinaXuxue Feng PROPOSAL
Leja Z FigeroaFranceStephen Shaw NEGOTIATION
Isabel P ButtItalyStephen Shaw NEW
Izzy F SchemmerAustraliaIoni Bowcher PROPOSAL
Claire N PerinGermanyAnna Fali QUALIFIED
Sinclair H StockhamFranceAnna Fali UNQUALIFIED
Maisha N GillianCanadaAsiya Javayant QUALIFIED
Maisha U DarakjySpainOnyama Limba PROPOSAL
Munro M InouyeJapanAmy Elsner UNQUALIFIED
Chavez H OldroydFranceIvan Magalhaes UNQUALIFIED
Mujtaba W GarufiIndiaAnna Fali RENEWAL
Horizontal
NameCountryRepresentativeStatus
Johnson K TollnerArgentinaElwin Sharvill QUALIFIED
Izzy H NestleFranceAmy Elsner RENEWAL
David N CaldareraCanadaBernardo Dominic RENEWAL
Isabel H SchemmerRussiaIvan Magalhaes NEGOTIATION
Morrow S MaletRussiaElwin Sharvill NEW
Leja K SchemmerItalyStephen Shaw QUALIFIED
Isabel S DoeIndiaAmy Elsner RENEWAL
Deepesh T SchemmerIndiaAmy Elsner PROPOSAL
Mayumi Z IturbideUnited KingdomIoni Bowcher UNQUALIFIED
Silvio T DarakjyArgentinaAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood E MarrierGermany2024-06-21Rousseaux, Michael Esq NEGOTIATION41Ioni Bowcher
1001Wickens U NickaArgentina2024-06-11Feiner Bros PROPOSAL87Stephen Shaw
1002Tony V IturbideRussia2024-06-22Truhlar And Truhlar Attys UNQUALIFIED71Stephen Shaw
1003Nicolas G SergiArgentina2024-06-19Rangoni Of Florence UNQUALIFIED43Elwin Sharvill
1004Leon L DarakjyCanada2024-05-30Truhlar And Truhlar Attys NEGOTIATION93Ivan Magalhaes
1005Rodrigues G KuskoBrazil2024-06-01Printing Dimensions UNQUALIFIED81Ioni Bowcher
1006Aika J MarrierSpain2024-06-19Feltz Printing Service RENEWAL0Ioni Bowcher
1007Claire X BowleyGermany2024-06-15Feltz Printing Service NEW35Anna Fali
1008Octavia N GillianUnited Kingdom2024-05-29Rousseaux, Michael Esq RENEWAL60Anna Fali
1009Aika R DilliardRussia2024-06-15Feiner Bros UNQUALIFIED43Elwin Sharvill
1010Julie X BologniaSpain2024-06-14Chapman, Ross E Esq UNQUALIFIED99Ioni Bowcher
1011Murillo B RulapaughBrazil2024-06-18Rousseaux, Michael Esq PROPOSAL56Amy Elsner
1012Alejandro L MacleadArgentina2024-06-12King, Christopher A Esq QUALIFIED9Ioni Bowcher
1013Johnson Z FollerUnited Kingdom2024-05-25Morlong Associates UNQUALIFIED29Ivan Magalhaes
1014Ivar O NestleIndia2024-05-30Benton, John B Jr RENEWAL78Ioni Bowcher
1015Costa B GauchoBrazil2024-06-02Rousseaux, Michael Esq NEGOTIATION38Ivan Magalhaes
1016Kadeem I InouyeItaly2024-05-31Truhlar And Truhlar Attys NEGOTIATION17Onyama Limba
1017Tony N RulapaughItaly2024-05-25Morlong Associates NEGOTIATION74Stephen Shaw
1018Sinclair O CampainItaly2024-05-28Commercial Press UNQUALIFIED5Anna Fali
1019Juan W RoysterGermany2024-05-29Feiner Bros RENEWAL77Amy Elsner
1020Rodrigues X RimIndia2024-06-08Commercial Press PROPOSAL91Amy Elsner
1021Mayumi A RutaGermany2024-06-21Printing Dimensions NEW0Onyama Limba
1022Antonio P SchemmerJapan2024-05-25Chanay, Jeffrey A Esq NEW26Anna Fali
1023Faith K OldroydJapan2024-06-08Chapman, Ross E Esq NEW14Xuxue Feng
1024Misaki L MorascaAustralia2024-05-29Chemel, James L Cpa PROPOSAL88Ivan Magalhaes
1025Stacey P FerenczAustralia2024-06-17Chanay, Jeffrey A Esq PROPOSAL80Anna Fali
1026Ivar W OstroskyJapan2024-06-11Feltz Printing Service NEW57Amy Elsner
1027Smith D PaprockiBrazil2024-06-17Chanay, Jeffrey A Esq UNQUALIFIED93Bernardo Dominic
1028Deepesh N MacleadCanada2024-06-02Rangoni Of Florence UNQUALIFIED50Stephen Shaw
1029Izzy W IturbideSpain2024-05-26Commercial Press NEW49Onyama Limba
1030Maisha S WhobreyBrazil2024-06-18Buckley Miller Wright QUALIFIED57Ioni Bowcher
1031Faith Z FollerJapan2024-06-16Buckley Miller Wright NEW40Asiya Javayant
1032Julie R OldroydSpain2024-06-07Commercial Press PROPOSAL16Bernardo Dominic
1033Claire J PoquetteSpain2024-06-12Dorl, James J Esq UNQUALIFIED58Anna Fali
1034Francesco P StockhamIndia2024-06-22Commercial Press NEW41Xuxue Feng
1035Rodrigues R DilliardUnited Kingdom2024-06-12Chemel, James L Cpa RENEWAL99Amy Elsner
1036Jennifer R MacleadBrazil2024-05-24Truhlar And Truhlar Attys NEGOTIATION27Anna Fali
1037Alejandro V OldroydItaly2024-05-30Chanay, Jeffrey A Esq UNQUALIFIED61Onyama Limba
1038Leon E KolmetzJapan2024-06-22Benton, John B Jr PROPOSAL76Stephen Shaw
1039Octavia G OldroydBrazil2024-06-10Buckley Miller Wright PROPOSAL99Xuxue Feng
1040Aika C MaletJapan2024-06-01Rangoni Of Florence RENEWAL70Ioni Bowcher
1041Murillo U PerinFrance2024-06-01Feltz Printing Service PROPOSAL59Elwin Sharvill
1042Chavez I MaletAustralia2024-06-03Feiner Bros RENEWAL19Onyama Limba
1043Silvio T PaprockiUnited Kingdom2024-06-03Rangoni Of Florence PROPOSAL90Xuxue Feng
1044Adams E GauchoRussia2024-06-22Buckley Miller Wright UNQUALIFIED34Ioni Bowcher
1045Francesco O GlickBrazil2024-06-15Feiner Bros QUALIFIED99Anna Fali
1046Isabel H PerinSpain2024-06-02Feiner Bros NEW32Amy Elsner
1047Francesco L TollnerArgentina2024-06-09Morlong Associates RENEWAL83Stephen Shaw
1048Leon B SlusarskiSpain2024-06-08Dorl, James J Esq UNQUALIFIED95Xuxue Feng
1049Wickens U WhobreyRussia2024-06-02Dorl, James J Esq PROPOSAL33Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Jennifer X BowleyRussiaAmy Elsner QUALIFIED
Octavia U InouyeGermanyAmy Elsner NEW
Antonio I SergiUnited KingdomAnna Fali RENEWAL
Costa K KolmetzGermanyIvan Magalhaes PROPOSAL
Cody M BologniaFranceXuxue Feng NEGOTIATION
Silvio W PaprockiRussiaOnyama Limba RENEWAL
Alejandro E FigeroaItalyAmy Elsner UNQUALIFIED
Aditya I MorascaBrazilBernardo Dominic RENEWAL
Alejandro Y WaycottCanadaXuxue Feng NEGOTIATION
Aruna M BriddickArgentinaAnna Fali UNQUALIFIED
Costa S SlusarskiItalyIoni Bowcher RENEWAL
Alejandro N StensethCanadaIoni Bowcher PROPOSAL
Jefferson C TollnerUnited KingdomAsiya Javayant PROPOSAL
Leon I MorascaRussiaAmy Elsner NEW
Salvatore J MarrierArgentinaStephen Shaw PROPOSAL
Jefferson A PaprockiItalyAsiya Javayant QUALIFIED
Aditya I RoysterArgentinaAmy Elsner PROPOSAL
David N GlickRussiaStephen Shaw QUALIFIED
Mujtaba B GlickSpainIvan Magalhaes NEGOTIATION
Morrow C RimArgentinaBernardo Dominic RENEWAL
Stacey Y PerinGermanyIvan Magalhaes RENEWAL
Juan N FigeroaRussiaAmy Elsner NEGOTIATION
Smith B SaylorsJapanAsiya Javayant QUALIFIED
Ashley E WieserAustraliaOnyama Limba RENEWAL
Maisha U WhobreySpainElwin Sharvill QUALIFIED
Nicolas M PoquetteCanadaOnyama Limba UNQUALIFIED
Kadeem U CaudyIndiaXuxue Feng QUALIFIED
Octavia S ButtAustraliaAsiya Javayant QUALIFIED
Mayumi C ShinkoGermanyIvan Magalhaes NEGOTIATION
Munro K RutaArgentinaAnna Fali UNQUALIFIED
David W AmigonItalyXuxue Feng NEGOTIATION
Juan S SergiRussiaAmy Elsner NEW
Mayumi N RutaCanadaIoni Bowcher UNQUALIFIED
Juan W SergiCanadaXuxue Feng UNQUALIFIED
Antonio O FlosiBrazilIoni Bowcher QUALIFIED
Munro T KolmetzArgentinaIvan Magalhaes QUALIFIED
Aruna X DilliardGermanyElwin Sharvill NEW
Tony P FigeroaGermanyAnna Fali PROPOSAL
Francesco P ShinkoArgentinaElwin Sharvill NEW
Alejandro W CampainBrazilXuxue Feng QUALIFIED
David X RulapaughFranceAmy Elsner NEGOTIATION
Arvin W WaycottArgentinaAsiya Javayant UNQUALIFIED
Mayumi R DoeJapanXuxue Feng NEGOTIATION
Leon Z NestleArgentinaAsiya Javayant UNQUALIFIED
Jennifer A ButtCanadaIvan Magalhaes PROPOSAL
Rodrigues R PerinFranceAmy Elsner PROPOSAL
James H FollerUnited KingdomAsiya Javayant QUALIFIED
Leja Y GauchoUnited KingdomAmy Elsner UNQUALIFIED
Ricardo B MarrierArgentinaIvan Magalhaes UNQUALIFIED
Aruna Y GarufiGermanyStephen Shaw UNQUALIFIED
Frozen Columns
Name
Octavia V Caldarera
Silvio L Darakjy
Alejandro B Caudy
Misaki B Figeroa
Antonio F Ferencz
Juan X Kolmetz
Mujtaba V Morasca
Francesco U Gillian
Ashley P Dilliard
Greenwood X Garufi
Johnson R Schemmer
Ashley C Campain
Cody J Saylors
Kaitlin I Morasca
Juan T Briddick
Sinclair O Waycott
Jennifer C Schemmer
James J Rim
Kaitlin G Nestle
Murillo X Nicka
Antonio V Bolognia
Aika W Ruta
Juan I Briddick
James J Malet
Jefferson I Bowley
Johnson U Rulapaugh
Jennifer K Caldarera
Aika O Caldarera
Murillo B Dilliard
Ivar S Briddick
Chavez J Poquette
Chavez H Marrier
Wickens B Caldarera
Chavez Z Campain
Isabel X Bolognia
David O Gillian
Smith M Kusko
Alejandro T Whobrey
Misaki F Saylors
Alejandro V Ruta
Murillo O Stenseth
Adams A Iturbide
Adams L Foller
Aika Y Bowley
Darci J Gaucho
Deepesh I Perin
Juan I Doe
Juan J Chui
Leon F Slusarski
James N Vocelka
IdCountryDate
1000Italy2024-06-04
1001United Kingdom2024-06-14
1002France2024-06-19
1003Spain2024-06-08
1004Germany2024-06-19
1005United Kingdom2024-06-19
1006France2024-06-20
1007Canada2024-06-06
1008Australia2024-06-12
1009France2024-05-30
1010Brazil2024-05-31
1011India2024-06-08
1012Germany2024-05-28
1013Russia2024-06-17
1014Spain2024-06-18
1015Canada2024-06-09
1016United Kingdom2024-06-10
1017Japan2024-06-10
1018Brazil2024-06-15
1019Russia2024-06-11
1020Japan2024-06-14
1021Germany2024-05-25
1022Canada2024-06-19
1023Russia2024-06-08
1024Spain2024-06-01
1025Argentina2024-06-09
1026Germany2024-06-08
1027Spain2024-05-28
1028Italy2024-06-15
1029Russia2024-06-15
1030Germany2024-06-09
1031Brazil2024-06-21
1032Australia2024-06-01
1033France2024-06-18
1034Russia2024-05-30
1035Argentina2024-06-21
1036Canada2024-06-04
1037Russia2024-06-19
1038Argentina2024-06-05
1039Germany2024-05-25
1040United Kingdom2024-06-01
1041United Kingdom2024-06-02
1042Russia2024-06-21
1043France2024-06-03
1044Australia2024-06-15
1045India2024-05-26
1046Italy2024-06-13
1047France2024-06-21
1048Spain2024-06-05
1049Russia2024-06-16

On-Demand Data

NameIdCountryDate
Costa L Kusko1000Japan2024-06-08
Johnson T Shinko1001Spain2024-06-20
Leja M Paprocki1002Spain2024-06-18
Leon Q Maclead1003Italy2024-06-02
Octavia K Figeroa1004Italy2024-06-16
Kaitlin B Iturbide1005Brazil2024-06-08
Misaki T Schemmer1006Germany2024-05-27
Jones T Briddick1007Germany2024-06-10
Mujtaba J Foller1008United Kingdom2024-06-15
Silvio G Perin1009Germany2024-06-10
Aika A Sergi1010United Kingdom2024-06-04
Murillo S Kusko1011United Kingdom2024-05-29
Murillo Q Bowley1012Australia2024-06-16
Maisha R Poquette1013France2024-06-17
Francesco Y Schemmer1014Argentina2024-06-13
Wickens O Stockham1015Spain2024-05-26
Emily N Marrier1016Australia2024-06-16
Maisha F Kusko1017Brazil2024-05-31
Leon B Ferencz1018Brazil2024-06-05
Mujtaba E Caudy1019Brazil2024-06-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi P KolmetzItalyAmy Elsner UNQUALIFIED
Aruna Y RoysterGermanyBernardo Dominic QUALIFIED
Kadeem R GauchoRussiaIoni Bowcher UNQUALIFIED
Leja A ButtAustraliaXuxue Feng NEW
Clifford G ButtRussiaStephen Shaw PROPOSAL
Munro A ShinkoItalyAmy Elsner PROPOSAL
Rodrigues H NickaGermanyOnyama Limba UNQUALIFIED
Leja T BriddickJapanStephen Shaw UNQUALIFIED
Kadeem T GarufiCanadaBernardo Dominic QUALIFIED
Ivar O FlosiGermanyAsiya Javayant UNQUALIFIED
David X SaylorsArgentinaAsiya Javayant RENEWAL
Jeanfrancois M StensethGermanyElwin Sharvill PROPOSAL
David W SergiGermanyElwin Sharvill NEGOTIATION
Francesco D NestleIndiaBernardo Dominic RENEWAL
Smith D ShinkoIndiaStephen Shaw UNQUALIFIED
Emily P IturbideRussiaAnna Fali PROPOSAL
Silvio S GillianItalyIvan Magalhaes NEGOTIATION
Aruna L AlbaresCanadaAnna Fali PROPOSAL
Munro R VocelkaBrazilAnna Fali UNQUALIFIED
Tony F StensethFranceIvan Magalhaes PROPOSAL
Antonio L RoysterBrazilAsiya Javayant NEGOTIATION
Tony X PaprockiFranceAnna Fali NEGOTIATION
David V ChuiItalyBernardo Dominic UNQUALIFIED
Clifford U KolmetzGermanyIvan Magalhaes RENEWAL
Alejandro J FigeroaItalyOnyama Limba UNQUALIFIED
Julie V ButtRussiaAmy Elsner RENEWAL
Maisha Q RimRussiaAsiya Javayant PROPOSAL
Kaitlin K AmigonBrazilElwin Sharvill UNQUALIFIED
Darci K DarakjyFranceOnyama Limba NEW
Faith C VenereGermanyOnyama Limba UNQUALIFIED
Claire E ShinkoJapanStephen Shaw NEW
Stacey B WhobreyArgentinaElwin Sharvill UNQUALIFIED
James I BriddickAustraliaBernardo Dominic QUALIFIED
Aika I RimUnited KingdomOnyama Limba NEW
David T RoysterJapanAsiya Javayant UNQUALIFIED
Mujtaba E VenereCanadaElwin Sharvill NEGOTIATION
Francesco J NestleItalyAnna Fali RENEWAL
Johnson V RulapaughJapanElwin Sharvill PROPOSAL
Mujtaba V RutaItalyXuxue Feng QUALIFIED
Antonio D WaycottUnited KingdomIoni Bowcher 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>