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
Sinclair N TollnerGermanyElwin Sharvill PROPOSAL
Sinclair C FlosiBrazilElwin Sharvill PROPOSAL
Antonio I TollnerIndiaStephen Shaw QUALIFIED
Adams T WaycottBrazilAmy Elsner NEW
Arvin U SaylorsIndiaElwin Sharvill NEW
James Z FlosiUnited KingdomBernardo Dominic NEW
Aika T StockhamRussiaXuxue Feng NEW
Leja B NickaIndiaAmy Elsner NEGOTIATION
Clifford U ButtRussiaAsiya Javayant NEW
Jones Y PerinRussiaBernardo Dominic NEGOTIATION
Juan P OldroydJapanElwin Sharvill NEW
Smith A GillianCanadaStephen Shaw UNQUALIFIED
Morrow C ChuiJapanIvan Magalhaes PROPOSAL
Juan A FerenczRussiaBernardo Dominic NEGOTIATION
Johnson B NickaIndiaXuxue Feng NEGOTIATION
Cody D TollnerArgentinaAnna Fali UNQUALIFIED
Francesco A BowleyArgentinaXuxue Feng QUALIFIED
Sinclair F OldroydGermanyBernardo Dominic UNQUALIFIED
Faith X SlusarskiAustraliaAmy Elsner PROPOSAL
Maria F ButtBrazilAsiya Javayant NEGOTIATION
Chavez C VocelkaGermanyAnna Fali NEGOTIATION
Jennifer J CaudyUnited KingdomStephen Shaw RENEWAL
Munro M BowleyArgentinaAnna Fali UNQUALIFIED
Mujtaba O PerinSpainIvan Magalhaes NEW
Nicolas K OldroydAustraliaIoni Bowcher QUALIFIED
Octavia F TollnerCanadaXuxue Feng NEW
Emily P CampainItalyIoni Bowcher QUALIFIED
Aditya C FollerSpainXuxue Feng UNQUALIFIED
Nicolas K StensethJapanAnna Fali QUALIFIED
Juan P SaylorsGermanyAnna Fali PROPOSAL
Deepesh N OldroydRussiaElwin Sharvill QUALIFIED
Juan P SlusarskiJapanOnyama Limba QUALIFIED
Smith I VenereSpainIvan Magalhaes UNQUALIFIED
Rodrigues F PerinArgentinaElwin Sharvill NEGOTIATION
Maria H KuskoCanadaXuxue Feng QUALIFIED
Deepesh J BriddickCanadaOnyama Limba NEGOTIATION
Arvin R BologniaJapanIoni Bowcher QUALIFIED
Nicolas B AmigonAustraliaStephen Shaw QUALIFIED
Mujtaba F MacleadAustraliaOnyama Limba NEGOTIATION
Aika R FerenczIndiaBernardo Dominic UNQUALIFIED
Antonio Y FerenczFranceXuxue Feng NEGOTIATION
Maria I RulapaughArgentinaElwin Sharvill NEW
Greenwood S NestleItalyXuxue Feng NEGOTIATION
Aruna E IturbideCanadaStephen Shaw NEGOTIATION
Leon Q VenereCanadaOnyama Limba QUALIFIED
Jones I StockhamFranceAnna Fali QUALIFIED
Jeanfrancois N RutaFranceAnna Fali RENEWAL
Salvatore U SchemmerIndiaIvan Magalhaes NEW
Faith L PerinUnited KingdomOnyama Limba NEW
Arvin T RulapaughBrazilAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Julie G KolmetzArgentinaIoni Bowcher NEGOTIATION
Greenwood J VenereGermanyAnna Fali PROPOSAL
Francesco V StockhamUnited KingdomAnna Fali UNQUALIFIED
Jeanfrancois U GauchoRussiaIoni Bowcher NEW
Leon U AmigonSpainAsiya Javayant NEGOTIATION
Rodrigues E NestleBrazilIvan Magalhaes NEW
Costa Q ChuiSpainBernardo Dominic NEW
Murillo Y CaldareraRussiaAnna Fali PROPOSAL
Smith W GillianArgentinaAnna Fali PROPOSAL
Salvatore K VocelkaSpainAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aika L FerenczArgentina2024-06-16Chapman, Ross E Esq UNQUALIFIED67Ioni Bowcher
1001Jones V WaycottUnited Kingdom2024-05-27Commercial Press UNQUALIFIED71Amy Elsner
1002Greenwood H ChuiUnited Kingdom2024-06-19Chanay, Jeffrey A Esq PROPOSAL17Onyama Limba
1003Clifford O GlickRussia2024-06-16Chapman, Ross E Esq NEW72Ivan Magalhaes
1004Tony C WhobreyCanada2024-06-16Rangoni Of Florence NEW46Stephen Shaw
1005Adams A NickaIndia2024-06-05Rangoni Of Florence UNQUALIFIED19Elwin Sharvill
1006Leja F NickaCanada2024-06-11Chemel, James L Cpa NEW70Bernardo Dominic
1007Sinclair L VocelkaBrazil2024-06-09Dorl, James J Esq RENEWAL40Elwin Sharvill
1008Jefferson W MacleadArgentina2024-06-07Truhlar And Truhlar Attys QUALIFIED64Stephen Shaw
1009Leon L MacleadAustralia2024-06-08Feltz Printing Service PROPOSAL3Bernardo Dominic
1010Alejandro Y PaprockiJapan2024-06-12Morlong Associates NEGOTIATION77Xuxue Feng
1011Mayumi R PerinFrance2024-05-31Chemel, James L Cpa PROPOSAL18Bernardo Dominic
1012Wickens C MarrierIndia2024-06-11Buckley Miller Wright QUALIFIED96Onyama Limba
1013Aditya S ButtFrance2024-06-16Feiner Bros NEGOTIATION76Anna Fali
1014Kaitlin X MacleadUnited Kingdom2024-06-21Morlong Associates QUALIFIED27Elwin Sharvill
1015Alejandro A BologniaGermany2024-05-24Feiner Bros UNQUALIFIED40Anna Fali
1016Jennifer I FigeroaJapan2024-05-26Chanay, Jeffrey A Esq RENEWAL8Xuxue Feng
1017Aditya L RimItaly2024-05-31Printing Dimensions UNQUALIFIED85Elwin Sharvill
1018Jones W FlosiSpain2024-06-13Chemel, James L Cpa UNQUALIFIED63Asiya Javayant
1019Claire X StensethAustralia2024-06-04Commercial Press QUALIFIED14Amy Elsner
1020Antonio M StockhamItaly2024-06-02Feltz Printing Service QUALIFIED34Amy Elsner
1021Morrow Q FlosiGermany2024-06-04Chapman, Ross E Esq UNQUALIFIED18Elwin Sharvill
1022Alejandro W SaylorsArgentina2024-06-05Chanay, Jeffrey A Esq UNQUALIFIED44Xuxue Feng
1023Tony L AmigonJapan2024-06-07Commercial Press PROPOSAL50Ioni Bowcher
1024Salvatore C IturbideItaly2024-06-17Benton, John B Jr UNQUALIFIED20Bernardo Dominic
1025Mayumi N StockhamSpain2024-06-03Morlong Associates PROPOSAL79Xuxue Feng
1026Murillo U StensethUnited Kingdom2024-06-04Rangoni Of Florence NEW75Bernardo Dominic
1027Ashley M FigeroaJapan2024-06-15Benton, John B Jr NEGOTIATION32Amy Elsner
1028Adams E RimAustralia2024-06-18Benton, John B Jr NEGOTIATION97Ivan Magalhaes
1029Costa D StensethCanada2024-06-08Feiner Bros UNQUALIFIED91Ivan Magalhaes
1030Claire T SergiRussia2024-06-20Feltz Printing Service NEGOTIATION84Xuxue Feng
1031Aika K VenereUnited Kingdom2024-06-15Rangoni Of Florence NEW44Elwin Sharvill
1032Sinclair M CaudyIndia2024-06-06Rousseaux, Michael Esq UNQUALIFIED70Xuxue Feng
1033Wickens Y FollerRussia2024-06-10Feiner Bros PROPOSAL56Xuxue Feng
1034Aruna G CaldareraRussia2024-05-30Printing Dimensions PROPOSAL70Ioni Bowcher
1035Octavia O OldroydRussia2024-05-25Chemel, James L Cpa NEW95Asiya Javayant
1036Aika B FigeroaGermany2024-06-19Feiner Bros PROPOSAL93Ivan Magalhaes
1037Antonio R WaycottSpain2024-06-08King, Christopher A Esq NEW50Anna Fali
1038Silvio K CaudyCanada2024-06-09Commercial Press QUALIFIED39Anna Fali
1039Leja Q WhobreyFrance2024-06-13King, Christopher A Esq PROPOSAL16Bernardo Dominic
1040Tony P CampainUnited Kingdom2024-05-30Commercial Press NEW40Xuxue Feng
1041Alejandro D FerenczCanada2024-06-12Rangoni Of Florence NEGOTIATION28Ioni Bowcher
1042Wickens Y SaylorsGermany2024-06-10Feltz Printing Service UNQUALIFIED12Elwin Sharvill
1043Kadeem R ChuiAustralia2024-06-03Benton, John B Jr QUALIFIED99Onyama Limba
1044Mayumi Z StensethFrance2024-05-28Benton, John B Jr PROPOSAL45Ioni Bowcher
1045Izzy E NickaGermany2024-06-04Rangoni Of Florence NEGOTIATION91Amy Elsner
1046Salvatore O SergiItaly2024-06-16Rousseaux, Michael Esq RENEWAL27Amy Elsner
1047Rodrigues T WieserGermany2024-06-21Commercial Press PROPOSAL33Xuxue Feng
1048Aditya C DoeUnited Kingdom2024-05-31Dorl, James J Esq UNQUALIFIED53Amy Elsner
1049Rodrigues F ButtFrance2024-06-22Chemel, James L Cpa NEW65Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Greenwood J SergiAustraliaIoni Bowcher QUALIFIED
Morrow E WaycottJapanIoni Bowcher NEW
Munro W RoysterRussiaStephen Shaw UNQUALIFIED
Claire T GauchoSpainIvan Magalhaes NEW
Adams L TollnerIndiaIoni Bowcher QUALIFIED
Cody Z BriddickUnited KingdomBernardo Dominic PROPOSAL
Arvin Q NickaCanadaAsiya Javayant QUALIFIED
Jeanfrancois R MaletJapanAsiya Javayant RENEWAL
Ashley R GillianIndiaAmy Elsner UNQUALIFIED
Kadeem J BriddickIndiaAmy Elsner RENEWAL
Mujtaba S MarrierBrazilOnyama Limba NEGOTIATION
Kaitlin L GauchoRussiaAsiya Javayant QUALIFIED
Greenwood I VenereIndiaOnyama Limba RENEWAL
Rodrigues R BowleyUnited KingdomStephen Shaw QUALIFIED
Misaki Z GillianItalyIoni Bowcher RENEWAL
Aditya T CaldareraAustraliaIvan Magalhaes RENEWAL
Smith S MacleadAustraliaXuxue Feng RENEWAL
Stacey E GillianBrazilBernardo Dominic NEGOTIATION
Rodrigues R SergiGermanyXuxue Feng NEW
Mayumi Y DarakjyAustraliaStephen Shaw NEW
Leon F ShinkoUnited KingdomBernardo Dominic RENEWAL
Sinclair N StensethGermanyIoni Bowcher RENEWAL
Kaitlin V ShinkoIndiaOnyama Limba NEW
Stacey B MaletSpainIvan Magalhaes QUALIFIED
Rodrigues S FlosiIndiaIvan Magalhaes UNQUALIFIED
Leja C AlbaresFranceOnyama Limba QUALIFIED
Octavia K AlbaresItalyAmy Elsner NEW
Arvin K ChuiSpainOnyama Limba PROPOSAL
Ashley J GarufiJapanAsiya Javayant PROPOSAL
Rodrigues Z AlbaresCanadaAsiya Javayant UNQUALIFIED
Francesco O WaycottAustraliaElwin Sharvill RENEWAL
Jones M FerenczIndiaOnyama Limba NEW
Ashley I WaycottBrazilIoni Bowcher UNQUALIFIED
Salvatore D WaycottIndiaXuxue Feng NEGOTIATION
Maria Y GlickBrazilElwin Sharvill RENEWAL
Chavez P MarrierIndiaStephen Shaw NEGOTIATION
Sinclair M OldroydSpainBernardo Dominic PROPOSAL
Arvin Y AmigonJapanIoni Bowcher RENEWAL
Isabel F StensethItalyIvan Magalhaes NEW
Tony P GlickItalyAsiya Javayant UNQUALIFIED
Francesco V DarakjyUnited KingdomIoni Bowcher NEGOTIATION
Jeanfrancois A CaldareraIndiaIvan Magalhaes PROPOSAL
Ricardo W BriddickJapanElwin Sharvill UNQUALIFIED
Kaitlin O MaletAustraliaXuxue Feng NEGOTIATION
James S StensethRussiaXuxue Feng UNQUALIFIED
Isabel S WieserJapanXuxue Feng NEGOTIATION
Clifford E NestleFranceAsiya Javayant PROPOSAL
Ivar M BowleyBrazilIoni Bowcher NEW
Aruna I BologniaJapanBernardo Dominic NEGOTIATION
Maria S RoysterUnited KingdomBernardo Dominic RENEWAL
Frozen Columns
Name
Salvatore T Nicka
James H Butt
Jeanfrancois L Poquette
Ashley R Shinko
Adams V Sergi
Jones S Morasca
Mujtaba U Figeroa
Morrow M Perin
Misaki X Bowley
Ricardo Q Caudy
Costa B Nestle
Silvio C Dilliard
Morrow U Inouye
Isabel Q Saylors
Sinclair H Nestle
Arvin C Whobrey
Chavez J Gillian
Morrow J Ferencz
Juan M Ferencz
Claire W Slusarski
Aruna O Briddick
Stacey P Garufi
Julie N Marrier
Munro G Royster
Kadeem X Doe
Ricardo R Amigon
Darci E Vocelka
Faith T Butt
Juan N Ferencz
Rodrigues G Rulapaugh
Francesco H Amigon
Misaki Q Darakjy
Juan X Paprocki
Jeanfrancois K Paprocki
Leja U Iturbide
Mujtaba C Marrier
Claire K Nicka
Jefferson E Slusarski
Aika N Venere
Johnson E Foller
Nicolas T Oldroyd
Jeanfrancois V Schemmer
Francesco A Poquette
Mayumi Q Marrier
Jeanfrancois D Kolmetz
Misaki V Nicka
Ivar V Ferencz
Aditya W Butt
Aditya V Sergi
Cody P Bowley
IdCountryDate
1000Germany2024-06-11
1001Australia2024-06-02
1002Australia2024-06-15
1003United Kingdom2024-05-25
1004Australia2024-05-26
1005Spain2024-05-24
1006Argentina2024-06-21
1007United Kingdom2024-05-27
1008Brazil2024-06-06
1009Spain2024-06-14
1010Canada2024-06-20
1011Germany2024-06-12
1012France2024-06-15
1013France2024-06-08
1014Japan2024-06-16
1015Australia2024-06-16
1016Australia2024-06-17
1017Italy2024-06-04
1018Germany2024-05-29
1019Spain2024-06-22
1020Japan2024-06-07
1021Italy2024-05-28
1022Canada2024-06-16
1023Canada2024-06-05
1024Spain2024-06-12
1025Spain2024-05-25
1026Italy2024-06-04
1027Brazil2024-06-21
1028India2024-06-20
1029Argentina2024-05-28
1030Argentina2024-05-26
1031Spain2024-05-26
1032Brazil2024-05-24
1033Brazil2024-06-14
1034Brazil2024-06-19
1035Brazil2024-06-18
1036India2024-06-12
1037Australia2024-05-27
1038Australia2024-06-14
1039Australia2024-05-28
1040India2024-05-24
1041Australia2024-06-03
1042Germany2024-06-17
1043Brazil2024-06-17
1044Russia2024-06-07
1045Spain2024-06-02
1046Italy2024-06-12
1047India2024-06-22
1048Argentina2024-06-01
1049France2024-06-12

On-Demand Data

NameIdCountryDate
Maisha A Vocelka1000Canada2024-06-11
Chavez X Oldroyd1001United Kingdom2024-05-28
Emily X Kusko1002Italy2024-06-04
David Z Ferencz1003France2024-06-22
Wickens N Maclead1004Argentina2024-06-17
Juan F Schemmer1005Japan2024-06-02
Kadeem K Bowley1006Japan2024-06-11
Darci Y Maclead1007Argentina2024-06-18
Cody J Ostrosky1008Canada2024-06-02
Isabel T Royster1009Italy2024-06-12
Izzy R Maclead1010Italy2024-06-09
Octavia L Amigon1011Italy2024-06-07
Clifford X Foller1012France2024-05-31
Leon X Chui1013United Kingdom2024-06-13
Arvin U Bowley1014Argentina2024-05-31
James H Rim1015United Kingdom2024-06-15
Rodrigues T Briddick1016France2024-06-04
Mayumi Q Gillian1017Italy2024-06-04
Mujtaba I Garufi1018Australia2024-05-24
Faith K Stenseth1019India2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith I NestleIndiaAmy Elsner PROPOSAL
Sinclair E GlickItalyIvan Magalhaes QUALIFIED
Aditya L BriddickArgentinaIoni Bowcher UNQUALIFIED
Octavia O FigeroaFranceAmy Elsner UNQUALIFIED
Wickens Y PaprockiItalyElwin Sharvill UNQUALIFIED
Salvatore J ShinkoJapanBernardo Dominic UNQUALIFIED
Kadeem N RutaUnited KingdomElwin Sharvill PROPOSAL
Chavez F VenereCanadaIoni Bowcher NEGOTIATION
Juan Q CaudySpainIvan Magalhaes NEW
Darci F FerenczBrazilAnna Fali UNQUALIFIED
Mujtaba W FlosiJapanAmy Elsner RENEWAL
Salvatore L AmigonCanadaBernardo Dominic RENEWAL
Morrow O RoysterUnited KingdomIvan Magalhaes PROPOSAL
Chavez T AmigonJapanAnna Fali NEGOTIATION
Faith S SlusarskiUnited KingdomIvan Magalhaes NEGOTIATION
Munro K MaletAustraliaElwin Sharvill PROPOSAL
Tony I DilliardSpainIvan Magalhaes RENEWAL
Tony L NestleUnited KingdomAsiya Javayant RENEWAL
Morrow K SlusarskiCanadaXuxue Feng UNQUALIFIED
Darci H GlickBrazilStephen Shaw QUALIFIED
Faith H DilliardCanadaStephen Shaw NEW
Octavia U MaletFranceIoni Bowcher NEGOTIATION
Greenwood X TollnerBrazilBernardo Dominic UNQUALIFIED
Emily M PoquetteItalyOnyama Limba RENEWAL
Aika V SchemmerUnited KingdomStephen Shaw NEGOTIATION
Smith C FigeroaCanadaElwin Sharvill NEW
Maisha N VenereGermanyIvan Magalhaes NEGOTIATION
Octavia H GarufiItalyAmy Elsner NEW
Darci G FigeroaItalyIvan Magalhaes RENEWAL
Wickens L BowleyJapanIoni Bowcher PROPOSAL
Munro Y AlbaresAustraliaBernardo Dominic NEGOTIATION
Mayumi C FigeroaCanadaBernardo Dominic QUALIFIED
Stacey B AlbaresUnited KingdomIvan Magalhaes RENEWAL
Ashley W BologniaSpainElwin Sharvill QUALIFIED
Rodrigues R NestleCanadaIoni Bowcher QUALIFIED
Jeanfrancois S GarufiUnited KingdomStephen Shaw QUALIFIED
Adams U BowleyIndiaBernardo Dominic NEGOTIATION
Izzy V SchemmerItalyIoni Bowcher UNQUALIFIED
Aika F SchemmerBrazilAsiya Javayant QUALIFIED
Rodrigues Y FollerFranceAnna Fali 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>