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
Nicolas T FigeroaCanadaIoni Bowcher RENEWAL
Jones B SergiGermanyIvan Magalhaes PROPOSAL
Sinclair G RulapaughCanadaStephen Shaw UNQUALIFIED
Costa E StockhamBrazilBernardo Dominic NEW
Aditya Q MaletIndiaAsiya Javayant NEGOTIATION
Alejandro E CampainBrazilAsiya Javayant RENEWAL
Munro N NickaIndiaAsiya Javayant UNQUALIFIED
Emily K WhobreySpainIvan Magalhaes RENEWAL
Aditya U VenereCanadaStephen Shaw NEW
Kaitlin E NickaItalyIoni Bowcher NEGOTIATION
Isabel V ChuiIndiaAsiya Javayant NEW
Aruna S SergiIndiaBernardo Dominic UNQUALIFIED
Salvatore S FollerGermanyBernardo Dominic NEW
Maria D InouyeFranceIoni Bowcher NEGOTIATION
Adams X StensethUnited KingdomXuxue Feng QUALIFIED
Adams L MacleadFranceAsiya Javayant UNQUALIFIED
Misaki T SchemmerAustraliaAsiya Javayant UNQUALIFIED
Antonio S RulapaughGermanyXuxue Feng RENEWAL
Jeanfrancois T InouyeIndiaAsiya Javayant PROPOSAL
Tony F NestleJapanIvan Magalhaes UNQUALIFIED
Silvio B InouyeCanadaAnna Fali RENEWAL
Chavez A FlosiArgentinaIoni Bowcher PROPOSAL
Rodrigues Q FerenczFranceAnna Fali PROPOSAL
Tony S FollerIndiaElwin Sharvill NEGOTIATION
Arvin H GillianJapanElwin Sharvill QUALIFIED
Murillo O GarufiUnited KingdomElwin Sharvill PROPOSAL
Salvatore M OldroydCanadaBernardo Dominic RENEWAL
Julie L BowleyUnited KingdomXuxue Feng NEW
Morrow M FollerRussiaOnyama Limba PROPOSAL
Rodrigues D OstroskyFranceStephen Shaw PROPOSAL
Ricardo I MorascaRussiaStephen Shaw NEGOTIATION
Leja R DilliardFranceElwin Sharvill PROPOSAL
James W RutaArgentinaBernardo Dominic NEGOTIATION
Antonio I WhobreyAustraliaBernardo Dominic NEGOTIATION
Morrow W AmigonBrazilIoni Bowcher QUALIFIED
Jeanfrancois Z BriddickIndiaAnna Fali NEGOTIATION
Arvin B WieserBrazilAsiya Javayant NEW
Murillo P FerenczRussiaAnna Fali UNQUALIFIED
Kadeem P GauchoRussiaIoni Bowcher PROPOSAL
Aruna E GillianIndiaStephen Shaw PROPOSAL
Aruna A GauchoJapanOnyama Limba RENEWAL
Alejandro B RulapaughGermanyIoni Bowcher NEGOTIATION
Deepesh C MaletJapanBernardo Dominic NEGOTIATION
Aditya W VocelkaGermanyIvan Magalhaes PROPOSAL
Leon B PerinBrazilBernardo Dominic UNQUALIFIED
Chavez P GarufiAustraliaAmy Elsner NEW
Deepesh N ShinkoAustraliaStephen Shaw PROPOSAL
Wickens O DilliardIndiaOnyama Limba RENEWAL
Francesco E MacleadArgentinaElwin Sharvill QUALIFIED
Smith F PoquetteIndiaIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Maria W WieserIndiaIvan Magalhaes RENEWAL
Deepesh E CampainArgentinaElwin Sharvill QUALIFIED
Maria Q MacleadAustraliaAsiya Javayant QUALIFIED
Deepesh F GillianUnited KingdomElwin Sharvill RENEWAL
Julie T FerenczItalyXuxue Feng PROPOSAL
Misaki D StensethFranceStephen Shaw PROPOSAL
Aditya G ShinkoGermanyAnna Fali PROPOSAL
Stacey M StockhamUnited KingdomIoni Bowcher NEGOTIATION
Alejandro T PaprockiAustraliaElwin Sharvill PROPOSAL
Kaitlin Z CaldareraAustraliaAnna Fali QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan T GauchoSpain2024-09-09Printing Dimensions RENEWAL73Onyama Limba
1001Isabel J FerenczArgentina2024-08-26Benton, John B Jr PROPOSAL56Asiya Javayant
1002Rodrigues M GlickJapan2024-08-29King, Christopher A Esq PROPOSAL2Ivan Magalhaes
1003Chavez X SaylorsCanada2024-09-17Rousseaux, Michael Esq QUALIFIED9Elwin Sharvill
1004Cody C AlbaresSpain2024-08-25Chapman, Ross E Esq PROPOSAL93Elwin Sharvill
1005Julie T GarufiItaly2024-08-24Buckley Miller Wright NEGOTIATION41Ioni Bowcher
1006Nicolas V FigeroaAustralia2024-08-28Rangoni Of Florence UNQUALIFIED85Stephen Shaw
1007Stacey H StensethGermany2024-08-25Benton, John B Jr UNQUALIFIED84Stephen Shaw
1008Cody W AmigonArgentina2024-08-26Feltz Printing Service RENEWAL89Xuxue Feng
1009Aika A MarrierUnited Kingdom2024-08-31Commercial Press RENEWAL78Asiya Javayant
1010Morrow D CaudyItaly2024-09-07Chanay, Jeffrey A Esq QUALIFIED11Anna Fali
1011Jefferson T PoquetteGermany2024-08-27Commercial Press UNQUALIFIED4Onyama Limba
1012Kaitlin G ChuiJapan2024-09-08Chemel, James L Cpa UNQUALIFIED86Xuxue Feng
1013Maisha L PerinArgentina2024-09-02Printing Dimensions PROPOSAL88Bernardo Dominic
1014Aika B CaldareraIndia2024-09-06Benton, John B Jr RENEWAL57Ioni Bowcher
1015Stacey S AlbaresGermany2024-09-11Chemel, James L Cpa RENEWAL14Asiya Javayant
1016Sinclair W DoeUnited Kingdom2024-09-06Rousseaux, Michael Esq QUALIFIED60Ioni Bowcher
1017Cody S PoquetteUnited Kingdom2024-09-17Chapman, Ross E Esq NEGOTIATION83Amy Elsner
1018Ashley R MaletJapan2024-08-28Chapman, Ross E Esq RENEWAL46Amy Elsner
1019Julie M TollnerAustralia2024-08-25Chemel, James L Cpa NEGOTIATION30Stephen Shaw
1020Johnson W FlosiArgentina2024-08-26Buckley Miller Wright NEGOTIATION65Stephen Shaw
1021Maria P WaycottIndia2024-09-15Commercial Press UNQUALIFIED23Amy Elsner
1022Mayumi Z BowleyUnited Kingdom2024-09-04Chapman, Ross E Esq QUALIFIED46Elwin Sharvill
1023Jeanfrancois H PoquetteCanada2024-09-07Buckley Miller Wright NEGOTIATION12Ivan Magalhaes
1024Antonio R WieserUnited Kingdom2024-09-13King, Christopher A Esq PROPOSAL63Ioni Bowcher
1025Leja R GauchoCanada2024-09-14King, Christopher A Esq NEGOTIATION17Ioni Bowcher
1026Julie K VocelkaIndia2024-08-30Benton, John B Jr UNQUALIFIED48Ioni Bowcher
1027Aditya Z CaudyJapan2024-08-31Morlong Associates NEW42Ioni Bowcher
1028Faith I DilliardAustralia2024-08-25Truhlar And Truhlar Attys NEW26Stephen Shaw
1029Isabel G MaletCanada2024-08-22Feiner Bros NEW82Elwin Sharvill
1030Jeanfrancois B FollerBrazil2024-09-08Commercial Press QUALIFIED9Elwin Sharvill
1031Octavia J VenereBrazil2024-09-12Chanay, Jeffrey A Esq PROPOSAL2Stephen Shaw
1032Misaki R KolmetzRussia2024-08-29Morlong Associates NEGOTIATION54Elwin Sharvill
1033Smith K MarrierGermany2024-08-25Truhlar And Truhlar Attys PROPOSAL90Asiya Javayant
1034Rodrigues S StockhamItaly2024-09-17King, Christopher A Esq NEW77Asiya Javayant
1035Ricardo S GillianAustralia2024-08-21Buckley Miller Wright RENEWAL63Onyama Limba
1036Costa Z AlbaresAustralia2024-09-07Dorl, James J Esq PROPOSAL74Anna Fali
1037Maisha L AmigonRussia2024-08-28Truhlar And Truhlar Attys UNQUALIFIED24Anna Fali
1038Sinclair W DarakjyItaly2024-09-05Chemel, James L Cpa RENEWAL53Ioni Bowcher
1039Murillo J GarufiFrance2024-09-16Commercial Press NEW87Asiya Javayant
1040Jefferson S CaldareraGermany2024-09-07Chapman, Ross E Esq QUALIFIED25Asiya Javayant
1041James R CaldareraCanada2024-09-13Benton, John B Jr QUALIFIED61Onyama Limba
1042Costa F OstroskyFrance2024-09-09Feltz Printing Service NEW69Elwin Sharvill
1043Smith I StensethJapan2024-08-21Feiner Bros NEW60Anna Fali
1044Aruna C DoeIndia2024-09-02Rangoni Of Florence NEGOTIATION60Bernardo Dominic
1045Greenwood X FollerIndia2024-09-17Morlong Associates UNQUALIFIED38Asiya Javayant
1046Aika Q ChuiAustralia2024-09-18Dorl, James J Esq QUALIFIED75Xuxue Feng
1047Isabel O BriddickSpain2024-08-31Commercial Press QUALIFIED77Anna Fali
1048Emily A MarrierBrazil2024-09-02Rousseaux, Michael Esq QUALIFIED73Onyama Limba
1049Cody J MaletIndia2024-09-18Buckley Miller Wright PROPOSAL47Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Adams G MacleadBrazilIvan Magalhaes RENEWAL
Wickens E DoeItalyXuxue Feng NEGOTIATION
Salvatore C VocelkaItalyAmy Elsner QUALIFIED
Deepesh R DilliardFranceBernardo Dominic UNQUALIFIED
Smith P BologniaIndiaStephen Shaw NEGOTIATION
Murillo U FlosiBrazilIoni Bowcher UNQUALIFIED
Claire N BologniaIndiaAnna Fali UNQUALIFIED
Munro L OstroskyGermanyStephen Shaw PROPOSAL
Chavez W AlbaresFranceAsiya Javayant NEGOTIATION
Kadeem D DilliardAustraliaElwin Sharvill NEGOTIATION
Cody G MaletUnited KingdomAmy Elsner PROPOSAL
Octavia G DilliardGermanyXuxue Feng UNQUALIFIED
Silvio E PoquetteAustraliaBernardo Dominic RENEWAL
Munro A MaletAustraliaIoni Bowcher QUALIFIED
Antonio F SchemmerAustraliaElwin Sharvill UNQUALIFIED
Smith O OldroydJapanIvan Magalhaes QUALIFIED
Ricardo H RutaGermanyIoni Bowcher NEW
Emily B OldroydIndiaBernardo Dominic QUALIFIED
Claire B TollnerBrazilAsiya Javayant NEW
Maisha S RutaIndiaStephen Shaw NEW
Arvin H VenereCanadaAsiya Javayant UNQUALIFIED
Wickens O GlickJapanXuxue Feng NEW
Aika N ButtGermanyIoni Bowcher NEGOTIATION
Morrow E DilliardSpainElwin Sharvill RENEWAL
Murillo F SaylorsAustraliaIoni Bowcher UNQUALIFIED
Ivar L DilliardBrazilAnna Fali PROPOSAL
Misaki W SaylorsFranceBernardo Dominic UNQUALIFIED
Jones D CaudyFranceXuxue Feng UNQUALIFIED
Ricardo E SergiRussiaAmy Elsner NEGOTIATION
Cody S BowleyJapanAnna Fali PROPOSAL
Jones K MaletJapanBernardo Dominic QUALIFIED
Silvio E SergiCanadaAnna Fali RENEWAL
Adams I BowleyArgentinaAmy Elsner PROPOSAL
Leja R FigeroaArgentinaElwin Sharvill QUALIFIED
Mayumi Z BologniaCanadaElwin Sharvill NEGOTIATION
Jones L GlickRussiaOnyama Limba NEW
Alejandro B ButtBrazilStephen Shaw NEW
Leon K RutaBrazilAmy Elsner NEGOTIATION
Darci M StensethArgentinaAmy Elsner PROPOSAL
Octavia S FerenczSpainBernardo Dominic PROPOSAL
Jefferson T MaletFranceAnna Fali NEGOTIATION
Tony W TollnerAustraliaIvan Magalhaes NEGOTIATION
Munro K SaylorsFranceIvan Magalhaes QUALIFIED
Nicolas P KuskoGermanyStephen Shaw NEGOTIATION
Clifford H TollnerUnited KingdomAmy Elsner PROPOSAL
Salvatore Z RutaIndiaIvan Magalhaes NEGOTIATION
Rodrigues J ButtItalyIvan Magalhaes UNQUALIFIED
Emily W KuskoUnited KingdomAmy Elsner RENEWAL
Kaitlin Z MaletIndiaBernardo Dominic PROPOSAL
Aruna C StensethRussiaStephen Shaw RENEWAL
Frozen Columns
Name
Nicolas I Foller
Maria B Glick
Silvio T Ostrosky
Isabel O Albares
Munro F Malet
Claire O Foller
Tony P Slusarski
Murillo Y Gaucho
Johnson K Gillian
Cody B Chui
Leon B Glick
Silvio Z Ferencz
Greenwood J Amigon
Smith J Malet
Julie T Tollner
Stacey R Nicka
Octavia N Saylors
Adams Z Rim
Misaki X Malet
Misaki R Sergi
Maria L Rim
Jefferson W Bolognia
Jefferson D Bolognia
Ivar Y Nicka
Kaitlin N Slusarski
Aruna K Butt
Julie V Slusarski
Mujtaba Y Garufi
Julie V Figeroa
Kadeem N Vocelka
Tony Y Bolognia
Rodrigues Y Marrier
Aruna K Doe
Nicolas G Malet
Kaitlin X Schemmer
Wickens S Slusarski
Jefferson W Paprocki
Johnson Q Vocelka
Kaitlin G Ruta
Silvio P Butt
Misaki W Rulapaugh
Chavez V Vocelka
Silvio P Inouye
Jefferson Z Malet
Ricardo S Venere
David O Caudy
Darci M Waycott
Munro J Chui
Leja E Darakjy
Alejandro G Glick
IdCountryDate
1000Canada2024-09-13
1001Italy2024-08-29
1002India2024-09-01
1003Australia2024-09-02
1004Spain2024-09-10
1005Canada2024-08-25
1006Canada2024-08-27
1007Japan2024-09-08
1008Canada2024-09-05
1009Canada2024-08-26
1010Japan2024-08-26
1011Brazil2024-09-09
1012Brazil2024-09-05
1013Australia2024-08-28
1014India2024-09-01
1015Australia2024-09-12
1016India2024-09-12
1017Australia2024-09-08
1018Germany2024-08-29
1019France2024-09-04
1020Canada2024-08-22
1021India2024-09-10
1022United Kingdom2024-09-11
1023Japan2024-08-24
1024India2024-09-02
1025France2024-09-17
1026Japan2024-09-07
1027Brazil2024-08-23
1028Japan2024-09-02
1029India2024-09-15
1030France2024-09-12
1031Canada2024-09-01
1032Italy2024-08-29
1033Australia2024-09-07
1034France2024-08-22
1035Argentina2024-09-13
1036Brazil2024-08-28
1037Russia2024-09-15
1038India2024-09-08
1039Russia2024-08-27
1040Canada2024-08-25
1041India2024-08-22
1042India2024-08-31
1043Japan2024-08-23
1044Russia2024-08-21
1045Australia2024-09-19
1046Russia2024-09-03
1047Canada2024-09-06
1048Germany2024-08-22
1049Italy2024-09-16

On-Demand Data

NameIdCountryDate
Mujtaba S Campain1000France2024-09-17
Sinclair L Gillian1001Australia2024-08-29
Chavez Y Figeroa1002Brazil2024-09-08
Salvatore Z Slusarski1003Germany2024-09-07
Ivar T Venere1004France2024-09-09
David A Gaucho1005France2024-09-02
Faith A Saylors1006Italy2024-09-13
Stacey M Chui1007Japan2024-09-13
Aruna Q Garufi1008India2024-09-13
Mujtaba S Nestle1009France2024-08-25
Nicolas H Rulapaugh1010Russia2024-09-06
Morrow K Bolognia1011Argentina2024-08-31
Kaitlin X Garufi1012Canada2024-09-17
Ricardo E Tollner1013Japan2024-08-30
Nicolas Q Doe1014Japan2024-09-17
Jefferson S Doe1015Japan2024-08-28
Tony C Albares1016Germany2024-08-27
James R Bolognia1017Spain2024-09-19
Jones Q Marrier1018United Kingdom2024-09-03
Silvio R Sergi1019Australia2024-09-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson J FigeroaRussiaIoni Bowcher NEW
Cody P FigeroaArgentinaIoni Bowcher RENEWAL
Clifford F PerinUnited KingdomXuxue Feng PROPOSAL
Nicolas Z SergiBrazilAsiya Javayant PROPOSAL
Jeanfrancois W TollnerArgentinaIvan Magalhaes NEW
Claire G VocelkaBrazilXuxue Feng PROPOSAL
Leja R PerinItalyIoni Bowcher NEW
Maria N NestleCanadaIoni Bowcher NEW
Claire G VenereRussiaElwin Sharvill PROPOSAL
James W MaletItalyIvan Magalhaes RENEWAL
Munro R WhobreyAustraliaBernardo Dominic RENEWAL
Aditya W DilliardBrazilXuxue Feng NEW
Smith T MaletJapanOnyama Limba PROPOSAL
Julie G MorascaUnited KingdomOnyama Limba PROPOSAL
Silvio T CaldareraBrazilAsiya Javayant UNQUALIFIED
Smith Q AmigonUnited KingdomIvan Magalhaes QUALIFIED
Isabel E WhobreyCanadaOnyama Limba PROPOSAL
Antonio Y SergiSpainAnna Fali RENEWAL
Darci U BologniaSpainOnyama Limba NEW
Kaitlin O StockhamArgentinaAsiya Javayant RENEWAL
Deepesh G NickaRussiaAnna Fali PROPOSAL
Murillo X FigeroaRussiaBernardo Dominic UNQUALIFIED
Rodrigues G GillianGermanyOnyama Limba NEW
Mujtaba P RutaJapanAsiya Javayant UNQUALIFIED
Aditya F GillianUnited KingdomIvan Magalhaes UNQUALIFIED
Sinclair I VenereArgentinaStephen Shaw NEW
James D NickaArgentinaElwin Sharvill NEGOTIATION
Nicolas P BriddickCanadaAmy Elsner UNQUALIFIED
Jeanfrancois C BriddickCanadaBernardo Dominic NEGOTIATION
James E StensethUnited KingdomBernardo Dominic UNQUALIFIED
Julie X KuskoCanadaIoni Bowcher NEW
Francesco K FerenczBrazilAnna Fali NEW
Francesco B BowleyAustraliaElwin Sharvill NEW
Deepesh N WhobreyUnited KingdomOnyama Limba PROPOSAL
Alejandro V GarufiBrazilXuxue Feng NEW
Julie E WhobreyUnited KingdomStephen Shaw NEGOTIATION
Aditya N DoeSpainElwin Sharvill PROPOSAL
Munro K StensethBrazilElwin Sharvill RENEWAL
Claire Y SergiSpainStephen Shaw QUALIFIED
Alejandro S RutaJapanIvan Magalhaes NEW

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