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
Stacey E CaldareraRussiaAnna Fali NEW
Chavez C WaycottArgentinaElwin Sharvill RENEWAL
Smith A BriddickSpainStephen Shaw UNQUALIFIED
Kadeem G InouyeArgentinaIvan Magalhaes PROPOSAL
Francesco Q KuskoIndiaAsiya Javayant UNQUALIFIED
Salvatore Y StensethAustraliaElwin Sharvill NEGOTIATION
Aika O KuskoSpainStephen Shaw RENEWAL
Murillo P IturbideJapanAnna Fali QUALIFIED
Aruna N MaletFranceIoni Bowcher NEW
Stacey V NickaFranceAnna Fali QUALIFIED
Darci L CampainBrazilAmy Elsner NEW
Stacey E SaylorsItalyAsiya Javayant NEW
Chavez Q StockhamIndiaAnna Fali PROPOSAL
Izzy E MacleadSpainElwin Sharvill RENEWAL
Antonio W CaudyCanadaIoni Bowcher PROPOSAL
Isabel A SaylorsItalyAnna Fali PROPOSAL
Mujtaba A MaletCanadaBernardo Dominic QUALIFIED
Arvin X SergiFranceAmy Elsner NEW
Jennifer B SaylorsFranceAsiya Javayant QUALIFIED
Faith N RimSpainOnyama Limba NEW
Munro S KolmetzItalyIvan Magalhaes QUALIFIED
Wickens U VenereCanadaIvan Magalhaes QUALIFIED
Ashley I BologniaJapanStephen Shaw PROPOSAL
Rodrigues Z GlickRussiaAmy Elsner PROPOSAL
Maisha U RoysterAustraliaIoni Bowcher NEW
Jones Z GauchoAustraliaIvan Magalhaes RENEWAL
Rodrigues K VocelkaUnited KingdomStephen Shaw QUALIFIED
Murillo E RimRussiaElwin Sharvill RENEWAL
Rodrigues W GarufiUnited KingdomAmy Elsner RENEWAL
Ricardo B BriddickRussiaIoni Bowcher NEW
David U SchemmerIndiaXuxue Feng RENEWAL
Julie M IturbideIndiaElwin Sharvill NEGOTIATION
Silvio G CaudyIndiaOnyama Limba NEGOTIATION
Wickens Y RutaSpainAnna Fali RENEWAL
Jefferson A ButtAustraliaIvan Magalhaes NEW
Kaitlin V SaylorsCanadaBernardo Dominic NEW
Antonio F KolmetzFranceIvan Magalhaes QUALIFIED
Rodrigues A CaldareraSpainIoni Bowcher NEW
Greenwood F BowleyCanadaStephen Shaw PROPOSAL
Kadeem Q DoeSpainIvan Magalhaes UNQUALIFIED
Costa Y GarufiFranceAmy Elsner PROPOSAL
Aditya K IturbideAustraliaIvan Magalhaes RENEWAL
Johnson W InouyeJapanIoni Bowcher UNQUALIFIED
Cody N ButtGermanyStephen Shaw PROPOSAL
Nicolas R RulapaughAustraliaXuxue Feng PROPOSAL
Misaki B WhobreyRussiaOnyama Limba PROPOSAL
Morrow Q ChuiUnited KingdomStephen Shaw NEGOTIATION
Faith O MaletJapanAnna Fali UNQUALIFIED
Emily I InouyeBrazilAsiya Javayant NEGOTIATION
Misaki A KolmetzUnited KingdomIvan Magalhaes QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Misaki K StensethAustraliaOnyama Limba QUALIFIED
Sinclair X DoeSpainAnna Fali NEW
Maisha K AlbaresCanadaAnna Fali NEW
Antonio U MaletGermanyIoni Bowcher UNQUALIFIED
Octavia H SergiArgentinaStephen Shaw UNQUALIFIED
Alejandro K PaprockiJapanIoni Bowcher QUALIFIED
Isabel I RulapaughAustraliaXuxue Feng NEW
Aika U WieserUnited KingdomElwin Sharvill QUALIFIED
Aika E GillianIndiaAmy Elsner NEW
Aruna L SergiFranceIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Claire C IturbideUnited Kingdom2024-05-14King, Christopher A Esq PROPOSAL20Xuxue Feng
1001Julie M MarrierItaly2024-05-04Chemel, James L Cpa QUALIFIED74Amy Elsner
1002Leja Z FlosiArgentina2024-05-06Buckley Miller Wright UNQUALIFIED61Amy Elsner
1003Salvatore I RulapaughSpain2024-05-27Commercial Press UNQUALIFIED96Elwin Sharvill
1004Johnson J SaylorsAustralia2024-05-08Benton, John B Jr PROPOSAL50Bernardo Dominic
1005Deepesh Y GarufiRussia2024-05-10Truhlar And Truhlar Attys NEW58Asiya Javayant
1006Stacey X BriddickCanada2024-05-20Chanay, Jeffrey A Esq QUALIFIED87Asiya Javayant
1007Mayumi B FollerGermany2024-04-29Dorl, James J Esq RENEWAL15Xuxue Feng
1008Johnson V InouyeUnited Kingdom2024-05-03Chanay, Jeffrey A Esq NEW8Xuxue Feng
1009Costa W OldroydRussia2024-04-29Buckley Miller Wright NEGOTIATION17Anna Fali
1010Julie F AlbaresRussia2024-05-18Benton, John B Jr UNQUALIFIED20Ivan Magalhaes
1011Stacey J NestleSpain2024-05-24Commercial Press RENEWAL13Stephen Shaw
1012David B VocelkaGermany2024-05-24Feltz Printing Service RENEWAL22Stephen Shaw
1013Ricardo I ShinkoUnited Kingdom2024-05-04Rangoni Of Florence NEW12Stephen Shaw
1014Morrow W MorascaItaly2024-05-18Rousseaux, Michael Esq UNQUALIFIED21Asiya Javayant
1015Smith T DilliardItaly2024-05-19Chapman, Ross E Esq QUALIFIED49Amy Elsner
1016Rodrigues I RulapaughBrazil2024-05-28Rangoni Of Florence NEGOTIATION58Asiya Javayant
1017Claire H OstroskyArgentina2024-05-12Rousseaux, Michael Esq NEGOTIATION13Ioni Bowcher
1018Jeanfrancois V MaletIndia2024-05-22Chanay, Jeffrey A Esq NEGOTIATION7Ioni Bowcher
1019Julie D MacleadIndia2024-05-08Truhlar And Truhlar Attys RENEWAL41Onyama Limba
1020Deepesh S MacleadSpain2024-05-14Morlong Associates NEGOTIATION24Amy Elsner
1021James Q GarufiArgentina2024-05-10Buckley Miller Wright UNQUALIFIED62Elwin Sharvill
1022Maisha F BowleyUnited Kingdom2024-05-13Truhlar And Truhlar Attys PROPOSAL12Bernardo Dominic
1023Costa R NestleUnited Kingdom2024-05-07Benton, John B Jr QUALIFIED10Ivan Magalhaes
1024Leja X RoysterCanada2024-05-03Truhlar And Truhlar Attys RENEWAL73Ivan Magalhaes
1025Aika L VenereArgentina2024-05-11Rangoni Of Florence PROPOSAL92Ioni Bowcher
1026Aruna J DilliardRussia2024-05-20Commercial Press RENEWAL5Asiya Javayant
1027Sinclair R AlbaresRussia2024-04-30King, Christopher A Esq PROPOSAL50Ivan Magalhaes
1028Izzy U PerinAustralia2024-05-09Printing Dimensions RENEWAL10Asiya Javayant
1029Antonio D TollnerGermany2024-05-02Chemel, James L Cpa UNQUALIFIED36Amy Elsner
1030Maisha C FigeroaArgentina2024-05-04Buckley Miller Wright NEW55Anna Fali
1031Cody U TollnerSpain2024-05-04Feiner Bros RENEWAL19Ivan Magalhaes
1032Kaitlin V FerenczBrazil2024-05-25Benton, John B Jr QUALIFIED43Onyama Limba
1033Chavez R MaletRussia2024-05-14Feiner Bros RENEWAL68Anna Fali
1034Mayumi T ButtBrazil2024-05-28Feltz Printing Service RENEWAL86Asiya Javayant
1035Ashley Z AlbaresJapan2024-05-24Chapman, Ross E Esq QUALIFIED29Elwin Sharvill
1036Cody G DilliardAustralia2024-05-14Dorl, James J Esq QUALIFIED34Ioni Bowcher
1037Costa O RoysterCanada2024-05-13Benton, John B Jr NEGOTIATION62Anna Fali
1038Sinclair I PaprockiArgentina2024-05-03Benton, John B Jr QUALIFIED65Ioni Bowcher
1039Octavia J PerinFrance2024-05-03King, Christopher A Esq NEW43Ioni Bowcher
1040Jefferson S BowleySpain2024-05-09Chanay, Jeffrey A Esq PROPOSAL47Anna Fali
1041Aika P KolmetzFrance2024-05-14Truhlar And Truhlar Attys RENEWAL74Ivan Magalhaes
1042Johnson W MarrierItaly2024-05-04Benton, John B Jr NEGOTIATION48Stephen Shaw
1043Antonio J AlbaresRussia2024-05-03Chemel, James L Cpa NEW73Amy Elsner
1044Mayumi S AlbaresUnited Kingdom2024-05-27Chanay, Jeffrey A Esq UNQUALIFIED88Ioni Bowcher
1045Emily C BologniaItaly2024-05-21Morlong Associates UNQUALIFIED16Bernardo Dominic
1046Smith I VocelkaCanada2024-05-26Dorl, James J Esq QUALIFIED9Onyama Limba
1047Faith P ButtCanada2024-05-02Truhlar And Truhlar Attys UNQUALIFIED90Asiya Javayant
1048Misaki X MacleadArgentina2024-05-17Printing Dimensions QUALIFIED21Asiya Javayant
1049Jeanfrancois S MaletSpain2024-05-15Rousseaux, Michael Esq NEW40Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Maria Q InouyeJapanOnyama Limba NEW
Jefferson F BriddickGermanyBernardo Dominic NEGOTIATION
Ashley E VenereBrazilIvan Magalhaes QUALIFIED
Greenwood P VenereGermanyOnyama Limba RENEWAL
Stacey S FigeroaJapanAnna Fali UNQUALIFIED
Isabel Z GauchoJapanElwin Sharvill RENEWAL
Aruna V FigeroaSpainBernardo Dominic NEW
Emily W AmigonSpainStephen Shaw QUALIFIED
Salvatore C GauchoCanadaIoni Bowcher PROPOSAL
Jones D VenereGermanyIoni Bowcher PROPOSAL
Adams K IturbideBrazilOnyama Limba UNQUALIFIED
Deepesh V AlbaresSpainIvan Magalhaes RENEWAL
Julie C StensethBrazilAsiya Javayant UNQUALIFIED
David N WaycottAustraliaIoni Bowcher RENEWAL
Jones P InouyeBrazilIvan Magalhaes NEGOTIATION
Silvio U RulapaughRussiaXuxue Feng NEGOTIATION
Arvin O VocelkaRussiaAnna Fali RENEWAL
Stacey X NickaIndiaAnna Fali NEW
Morrow P FollerFranceAsiya Javayant NEW
Maisha U GlickGermanyBernardo Dominic PROPOSAL
Jones R PaprockiIndiaAsiya Javayant NEW
Ricardo P PaprockiJapanStephen Shaw UNQUALIFIED
Maria S StensethRussiaAmy Elsner QUALIFIED
Kaitlin B InouyeItalyAmy Elsner NEGOTIATION
Costa M SergiSpainAnna Fali NEGOTIATION
Jeanfrancois U DoeJapanIvan Magalhaes UNQUALIFIED
Jeanfrancois Q MacleadItalyAnna Fali PROPOSAL
Leja J CaldareraFranceXuxue Feng PROPOSAL
Sinclair W DarakjyArgentinaIoni Bowcher PROPOSAL
Juan F NickaUnited KingdomIvan Magalhaes PROPOSAL
Greenwood I InouyeArgentinaIvan Magalhaes NEGOTIATION
Ivar S VocelkaIndiaXuxue Feng UNQUALIFIED
James D BologniaIndiaStephen Shaw UNQUALIFIED
Alejandro W VenereSpainAnna Fali PROPOSAL
Smith O TollnerAustraliaAnna Fali NEW
Antonio S WieserCanadaIvan Magalhaes QUALIFIED
Rodrigues H WaycottFranceAmy Elsner RENEWAL
James K NickaRussiaStephen Shaw NEW
Jeanfrancois V OstroskyGermanyIvan Magalhaes NEGOTIATION
Munro K MorascaJapanAmy Elsner NEGOTIATION
Emily M TollnerUnited KingdomBernardo Dominic NEGOTIATION
Kaitlin Y PaprockiBrazilElwin Sharvill NEGOTIATION
Jennifer Y AmigonAustraliaAnna Fali QUALIFIED
Jones G RulapaughIndiaIoni Bowcher PROPOSAL
Misaki G AlbaresGermanyAsiya Javayant QUALIFIED
Jennifer W ButtRussiaIoni Bowcher NEGOTIATION
Jeanfrancois A GauchoCanadaAmy Elsner QUALIFIED
Julie N SlusarskiBrazilIvan Magalhaes NEGOTIATION
Juan P MarrierBrazilIoni Bowcher PROPOSAL
Aruna K ShinkoIndiaIvan Magalhaes QUALIFIED
Frozen Columns
Name
Kaitlin J Foller
Greenwood O Nicka
Wickens W Oldroyd
Faith T Venere
Ricardo N Kolmetz
Murillo Z Venere
Ivar K Paprocki
Arvin Y Figeroa
Tony V Ostrosky
Tony K Nicka
Isabel Z Stockham
Mayumi A Amigon
Cody W Foller
Mujtaba Y Stockham
Ashley P Perin
Claire L Bowley
Morrow V Gillian
Cody Z Gillian
Maisha M Rim
Ricardo G Briddick
Jefferson C Ostrosky
Julie X Perin
Salvatore Q Wieser
Octavia T Kusko
Leja Y Royster
Misaki H Briddick
Clifford L Foller
Murillo R Sergi
Mayumi D Ferencz
Antonio F Kusko
Maria Z Dilliard
James D Slusarski
Kaitlin U Caldarera
James V Venere
Jefferson G Chui
Ivar D Darakjy
David U Shinko
Aditya T Nestle
Jones M Saylors
Alejandro I Gaucho
Julie R Ferencz
Salvatore M Foller
Mayumi Y Waycott
Isabel L Schemmer
Faith P Chui
Kaitlin H Bolognia
Jennifer B Glick
Aruna T Chui
Octavia G Sergi
Murillo K Poquette
IdCountryDate
1000United Kingdom2024-05-20
1001Brazil2024-05-20
1002Canada2024-05-19
1003United Kingdom2024-05-20
1004Argentina2024-05-18
1005Russia2024-05-11
1006Spain2024-05-27
1007Spain2024-05-04
1008Brazil2024-05-28
1009United Kingdom2024-05-06
1010United Kingdom2024-05-11
1011United Kingdom2024-05-21
1012Canada2024-05-01
1013United Kingdom2024-05-14
1014Brazil2024-05-28
1015Germany2024-05-17
1016India2024-05-27
1017Australia2024-05-10
1018Germany2024-05-15
1019Germany2024-05-19
1020Germany2024-05-26
1021United Kingdom2024-05-03
1022United Kingdom2024-05-08
1023Russia2024-05-21
1024Argentina2024-05-28
1025France2024-05-01
1026Australia2024-05-19
1027Spain2024-05-13
1028India2024-05-03
1029United Kingdom2024-05-24
1030United Kingdom2024-05-10
1031United Kingdom2024-05-20
1032Canada2024-05-10
1033France2024-05-12
1034Spain2024-05-22
1035Russia2024-05-10
1036Canada2024-05-27
1037United Kingdom2024-05-19
1038India2024-05-20
1039Spain2024-05-09
1040Canada2024-05-08
1041Canada2024-05-14
1042Italy2024-05-23
1043Russia2024-05-12
1044Brazil2024-05-20
1045Argentina2024-05-21
1046India2024-05-25
1047Australia2024-05-01
1048United Kingdom2024-05-23
1049United Kingdom2024-05-18

On-Demand Data

NameIdCountryDate
Greenwood R Garufi1000United Kingdom2024-05-17
Octavia J Kolmetz1001Canada2024-05-13
Jennifer F Schemmer1002Australia2024-05-15
Morrow Y Foller1003Australia2024-05-28
Wickens G Shinko1004Italy2024-05-01
Silvio F Venere1005Japan2024-05-01
Adams R Shinko1006France2024-04-29
Wickens H Poquette1007United Kingdom2024-05-10
Leja J Paprocki1008Russia2024-05-06
Mayumi P Kolmetz1009Russia2024-05-03
Mujtaba C Butt1010United Kingdom2024-05-08
Johnson P Tollner1011Spain2024-05-13
David I Perin1012United Kingdom2024-05-19
Leja U Nestle1013Spain2024-05-11
Tony B Gillian1014Japan2024-05-22
Jeanfrancois O Paprocki1015Argentina2024-05-13
Sinclair X Saylors1016Argentina2024-05-25
Mayumi K Tollner1017Australia2024-05-24
Munro C Morasca1018Italy2024-05-24
Faith A Malet1019France2024-05-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow D WhobreyUnited KingdomAmy Elsner QUALIFIED
Stacey G MaletSpainXuxue Feng NEGOTIATION
Francesco B IturbideCanadaAmy Elsner NEW
Chavez W ChuiRussiaStephen Shaw NEW
Nicolas J NickaBrazilXuxue Feng UNQUALIFIED
David A ChuiUnited KingdomAmy Elsner PROPOSAL
Misaki A DilliardSpainAsiya Javayant RENEWAL
Costa T RimSpainAmy Elsner QUALIFIED
Deepesh H BriddickSpainXuxue Feng RENEWAL
Izzy P KolmetzJapanIoni Bowcher RENEWAL
Wickens P VocelkaRussiaAnna Fali QUALIFIED
Smith S SergiRussiaIoni Bowcher RENEWAL
Jones S VocelkaGermanyStephen Shaw UNQUALIFIED
Deepesh X BowleyFranceIvan Magalhaes QUALIFIED
Emily T DilliardItalyStephen Shaw PROPOSAL
Kaitlin A AmigonIndiaElwin Sharvill RENEWAL
David T PerinAustraliaOnyama Limba NEGOTIATION
Francesco C ButtIndiaBernardo Dominic RENEWAL
Maisha W FollerIndiaAmy Elsner NEGOTIATION
Ivar I InouyeRussiaAsiya Javayant RENEWAL
Salvatore C FlosiFranceAsiya Javayant PROPOSAL
Clifford D SergiSpainAnna Fali NEGOTIATION
Munro C MorascaSpainIoni Bowcher RENEWAL
Deepesh X DoeItalyXuxue Feng PROPOSAL
Kadeem E MaletFranceElwin Sharvill NEGOTIATION
Murillo W MarrierItalyElwin Sharvill RENEWAL
Deepesh E GarufiFranceStephen Shaw NEW
Deepesh L RoysterIndiaBernardo Dominic QUALIFIED
Ricardo Z PaprockiRussiaIoni Bowcher NEW
Adams R DilliardRussiaAnna Fali RENEWAL
Emily X SaylorsBrazilXuxue Feng RENEWAL
Ricardo U GillianJapanOnyama Limba UNQUALIFIED
Aika W RimFranceStephen Shaw RENEWAL
Ivar T WieserAustraliaXuxue Feng QUALIFIED
Izzy Y StensethAustraliaXuxue Feng QUALIFIED
Faith G DilliardJapanBernardo Dominic NEGOTIATION
Stacey U InouyeIndiaOnyama Limba QUALIFIED
Aruna Z PerinFranceAnna Fali NEGOTIATION
Aditya U TollnerSpainStephen Shaw NEW
Claire Y GauchoCanadaBernardo 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>