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
Francesco A AlbaresRussiaIoni Bowcher NEGOTIATION
Misaki X PerinFranceIoni Bowcher UNQUALIFIED
Arvin L MaletAustraliaIoni Bowcher UNQUALIFIED
Morrow E OldroydSpainAsiya Javayant NEW
Octavia H CaldareraJapanAsiya Javayant PROPOSAL
Juan V OstroskyArgentinaIoni Bowcher PROPOSAL
Morrow E InouyeArgentinaOnyama Limba NEW
Octavia R DilliardUnited KingdomXuxue Feng RENEWAL
Julie G SlusarskiArgentinaAsiya Javayant PROPOSAL
Francesco F AlbaresAustraliaAnna Fali NEW
Stacey B MaletGermanyElwin Sharvill NEW
Leja S BologniaSpainBernardo Dominic UNQUALIFIED
Kadeem T GarufiFranceBernardo Dominic QUALIFIED
Nicolas J GillianCanadaAnna Fali PROPOSAL
Leja K PaprockiAustraliaIoni Bowcher UNQUALIFIED
Murillo W FerenczRussiaOnyama Limba RENEWAL
Jeanfrancois V RimIndiaIvan Magalhaes NEGOTIATION
Aditya Z BowleySpainOnyama Limba NEW
Emily F FlosiItalyAnna Fali RENEWAL
Greenwood X CaudyCanadaXuxue Feng RENEWAL
Cody G FollerUnited KingdomAsiya Javayant NEW
Chavez K VenereRussiaIoni Bowcher UNQUALIFIED
Leon G NestleRussiaAmy Elsner PROPOSAL
Juan P PoquetteIndiaAnna Fali RENEWAL
Johnson P MaletJapanBernardo Dominic PROPOSAL
Adams Z CampainIndiaAsiya Javayant UNQUALIFIED
Deepesh Z AmigonBrazilAsiya Javayant NEW
Aruna U GlickItalyElwin Sharvill UNQUALIFIED
Chavez M RoysterFranceIvan Magalhaes QUALIFIED
Johnson N RulapaughIndiaAmy Elsner UNQUALIFIED
Stacey L AlbaresAustraliaXuxue Feng NEGOTIATION
Octavia X PerinItalyElwin Sharvill RENEWAL
Jefferson O CaldareraFranceElwin Sharvill UNQUALIFIED
Munro R BriddickSpainIoni Bowcher PROPOSAL
Murillo N StockhamIndiaElwin Sharvill PROPOSAL
Stacey K ShinkoIndiaXuxue Feng RENEWAL
Emily E StockhamGermanyAmy Elsner NEGOTIATION
Jones I CampainAustraliaStephen Shaw QUALIFIED
Maria T ButtJapanOnyama Limba UNQUALIFIED
Maisha B RulapaughGermanyIvan Magalhaes NEGOTIATION
Juan H SlusarskiFranceAnna Fali RENEWAL
Morrow W SlusarskiArgentinaXuxue Feng NEW
Wickens J AlbaresIndiaOnyama Limba NEW
Faith C PaprockiAustraliaAnna Fali NEGOTIATION
Antonio H RoysterFranceAnna Fali PROPOSAL
Greenwood N AlbaresItalyIvan Magalhaes NEGOTIATION
Kadeem H CaldareraItalyBernardo Dominic RENEWAL
Nicolas R AmigonIndiaStephen Shaw UNQUALIFIED
Greenwood U BowleyRussiaAmy Elsner PROPOSAL
Costa A MorascaSpainOnyama Limba UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
James N RutaBrazilOnyama Limba NEW
Sinclair R ButtArgentinaAmy Elsner PROPOSAL
Arvin P KuskoItalyAsiya Javayant QUALIFIED
Costa G ButtAustraliaIoni Bowcher PROPOSAL
Nicolas B RoysterJapanAsiya Javayant UNQUALIFIED
Maisha W SergiArgentinaXuxue Feng UNQUALIFIED
Misaki T NestleJapanAmy Elsner QUALIFIED
Stacey O MaletSpainBernardo Dominic UNQUALIFIED
Maisha N DilliardFranceElwin Sharvill UNQUALIFIED
Aruna S PaprockiAustraliaStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leon A SergiAustralia2024-06-14Buckley Miller Wright QUALIFIED28Elwin Sharvill
1001Wickens R KolmetzArgentina2024-06-18Rangoni Of Florence QUALIFIED72Anna Fali
1002Sinclair J OldroydCanada2024-06-21Benton, John B Jr QUALIFIED43Bernardo Dominic
1003James E PoquetteJapan2024-06-09Buckley Miller Wright QUALIFIED17Bernardo Dominic
1004Greenwood B FlosiFrance2024-06-19Commercial Press PROPOSAL40Amy Elsner
1005Sinclair B PaprockiAustralia2024-05-26Feltz Printing Service NEW79Onyama Limba
1006David J PaprockiSpain2024-06-13Rousseaux, Michael Esq NEW95Ioni Bowcher
1007Aditya H DarakjyIndia2024-06-03Feiner Bros QUALIFIED68Amy Elsner
1008Aruna W PaprockiAustralia2024-06-09Truhlar And Truhlar Attys NEGOTIATION53Onyama Limba
1009Greenwood X KuskoItaly2024-05-28Morlong Associates PROPOSAL96Amy Elsner
1010Faith E RimBrazil2024-06-19Chemel, James L Cpa QUALIFIED92Bernardo Dominic
1011Jefferson T DilliardIndia2024-06-12Feiner Bros QUALIFIED34Anna Fali
1012Murillo J InouyeIndia2024-06-07Buckley Miller Wright NEW38Elwin Sharvill
1013Jeanfrancois A PerinSpain2024-06-04Chapman, Ross E Esq RENEWAL48Bernardo Dominic
1014Leja H MacleadCanada2024-06-23Benton, John B Jr QUALIFIED27Amy Elsner
1015Leja G IturbideJapan2024-06-16Feltz Printing Service RENEWAL32Ioni Bowcher
1016Morrow G BriddickCanada2024-06-19Rangoni Of Florence NEGOTIATION20Xuxue Feng
1017Arvin S RulapaughBrazil2024-06-04Printing Dimensions NEGOTIATION63Amy Elsner
1018James H CaudySpain2024-05-26Rangoni Of Florence PROPOSAL24Ioni Bowcher
1019Arvin S StensethUnited Kingdom2024-06-05Chapman, Ross E Esq QUALIFIED48Stephen Shaw
1020Antonio A InouyeIndia2024-06-21King, Christopher A Esq NEW74Ioni Bowcher
1021James Z ButtItaly2024-05-29Chemel, James L Cpa UNQUALIFIED53Onyama Limba
1022Izzy A MacleadArgentina2024-06-16Rousseaux, Michael Esq QUALIFIED7Xuxue Feng
1023Ashley W RutaUnited Kingdom2024-06-13Benton, John B Jr NEGOTIATION58Asiya Javayant
1024Jefferson F VenereJapan2024-05-27Chanay, Jeffrey A Esq UNQUALIFIED7Bernardo Dominic
1025Ashley W KolmetzCanada2024-06-11Feiner Bros NEW8Xuxue Feng
1026Costa L AlbaresSpain2024-06-21Chemel, James L Cpa QUALIFIED46Amy Elsner
1027Clifford H TollnerGermany2024-05-31Chanay, Jeffrey A Esq NEW19Stephen Shaw
1028Ashley M MaletCanada2024-05-25Chemel, James L Cpa PROPOSAL93Xuxue Feng
1029Jones U StensethAustralia2024-05-26Rangoni Of Florence UNQUALIFIED87Ioni Bowcher
1030Claire S VocelkaItaly2024-06-19Rangoni Of Florence NEW67Stephen Shaw
1031Emily F MaletAustralia2024-06-16Feltz Printing Service PROPOSAL26Onyama Limba
1032Ivar Z OldroydItaly2024-05-29Morlong Associates UNQUALIFIED47Amy Elsner
1033Leja U WieserSpain2024-05-25King, Christopher A Esq QUALIFIED49Stephen Shaw
1034Morrow I FigeroaItaly2024-06-12Truhlar And Truhlar Attys NEGOTIATION4Elwin Sharvill
1035Juan L DoeJapan2024-05-30Rousseaux, Michael Esq PROPOSAL22Asiya Javayant
1036Emily R PoquetteItaly2024-05-30Buckley Miller Wright RENEWAL41Ioni Bowcher
1037Costa C GarufiSpain2024-05-29Buckley Miller Wright UNQUALIFIED77Amy Elsner
1038Alejandro F ButtRussia2024-06-10Rousseaux, Michael Esq UNQUALIFIED57Amy Elsner
1039Costa E SchemmerSpain2024-06-19Truhlar And Truhlar Attys QUALIFIED94Asiya Javayant
1040Deepesh U AlbaresArgentina2024-06-23Rousseaux, Michael Esq UNQUALIFIED29Onyama Limba
1041Chavez R NestleIndia2024-06-19Rousseaux, Michael Esq PROPOSAL97Amy Elsner
1042Murillo A WhobreyBrazil2024-06-11Chanay, Jeffrey A Esq UNQUALIFIED29Ivan Magalhaes
1043Chavez V DilliardGermany2024-05-27Chanay, Jeffrey A Esq QUALIFIED6Bernardo Dominic
1044Antonio A ButtIndia2024-06-07Chanay, Jeffrey A Esq RENEWAL49Amy Elsner
1045Smith H VocelkaJapan2024-06-08King, Christopher A Esq QUALIFIED28Xuxue Feng
1046Claire K KuskoFrance2024-06-07Morlong Associates RENEWAL40Stephen Shaw
1047Costa N AmigonGermany2024-06-11Buckley Miller Wright NEGOTIATION34Onyama Limba
1048Maria V BologniaAustralia2024-06-23Feiner Bros QUALIFIED84Ioni Bowcher
1049Ricardo Z NestleFrance2024-05-26Buckley Miller Wright RENEWAL60Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Adams D SlusarskiIndiaStephen Shaw QUALIFIED
Smith B WieserCanadaIvan Magalhaes UNQUALIFIED
Leja I GauchoAustraliaAmy Elsner NEGOTIATION
Mayumi U BologniaBrazilIoni Bowcher UNQUALIFIED
Deepesh M StockhamAustraliaStephen Shaw NEGOTIATION
Izzy C VenereUnited KingdomAsiya Javayant PROPOSAL
Juan B WhobreySpainOnyama Limba NEW
Izzy R StensethGermanyOnyama Limba NEGOTIATION
Claire P ButtRussiaAsiya Javayant QUALIFIED
Arvin X PerinIndiaElwin Sharvill QUALIFIED
Greenwood Z VenereCanadaBernardo Dominic PROPOSAL
Misaki T MaletAustraliaElwin Sharvill PROPOSAL
Wickens K RutaGermanyAmy Elsner RENEWAL
Jeanfrancois Y CaldareraAustraliaElwin Sharvill NEW
Silvio L SlusarskiRussiaAmy Elsner QUALIFIED
Jeanfrancois N RulapaughGermanyOnyama Limba QUALIFIED
Claire D VocelkaIndiaIvan Magalhaes UNQUALIFIED
Jennifer A RulapaughBrazilOnyama Limba NEGOTIATION
Nicolas Z AmigonSpainOnyama Limba QUALIFIED
Jones Z OstroskyBrazilBernardo Dominic RENEWAL
Isabel Y SchemmerFranceXuxue Feng UNQUALIFIED
Arvin W FigeroaGermanyElwin Sharvill NEGOTIATION
Misaki E InouyeItalyElwin Sharvill NEGOTIATION
Ricardo Z CaldareraJapanElwin Sharvill RENEWAL
Clifford R InouyeRussiaAnna Fali PROPOSAL
Ashley A GarufiUnited KingdomElwin Sharvill QUALIFIED
Salvatore Z MarrierFranceBernardo Dominic NEW
Morrow K VocelkaUnited KingdomAsiya Javayant NEGOTIATION
Cody D KuskoItalyStephen Shaw UNQUALIFIED
Juan S CaldareraGermanyStephen Shaw QUALIFIED
Juan I MorascaJapanXuxue Feng QUALIFIED
Stacey D PerinArgentinaAsiya Javayant PROPOSAL
Aika V VenereArgentinaAsiya Javayant NEGOTIATION
Clifford Y MarrierFranceIvan Magalhaes NEGOTIATION
Ivar W ChuiGermanyAsiya Javayant NEW
James P CaldareraSpainElwin Sharvill RENEWAL
Ricardo N NickaIndiaOnyama Limba UNQUALIFIED
Cody D SaylorsArgentinaIvan Magalhaes PROPOSAL
Jefferson N NestleSpainOnyama Limba PROPOSAL
Tony P PaprockiSpainAsiya Javayant RENEWAL
Aika G BriddickJapanIoni Bowcher RENEWAL
Kaitlin G BowleySpainElwin Sharvill NEGOTIATION
Arvin K BologniaBrazilBernardo Dominic PROPOSAL
Maisha V MaletCanadaAnna Fali NEW
Sinclair N FerenczFranceBernardo Dominic UNQUALIFIED
Smith L FigeroaCanadaAsiya Javayant QUALIFIED
Adams P WieserIndiaElwin Sharvill NEGOTIATION
Emily F RimFranceAmy Elsner RENEWAL
Cody D CaudyRussiaElwin Sharvill NEW
Ivar G DoeIndiaStephen Shaw PROPOSAL
Frozen Columns
Name
Jeanfrancois H Bowley
Smith W Caudy
Kadeem M Kusko
Munro Q Foller
Ivar R Shinko
James B Vocelka
Mayumi G Wieser
Claire U Caldarera
Isabel C Campain
Isabel U Waycott
Ashley K Gaucho
Adams F Nicka
Aika M Nicka
Ashley U Ostrosky
James C Schemmer
Mujtaba D Ruta
Antonio N Ferencz
Nicolas H Ostrosky
Greenwood D Briddick
Maisha K Paprocki
Costa E Inouye
Jeanfrancois H Venere
Antonio C Kolmetz
Munro D Butt
Munro R Marrier
Aditya Q Figeroa
Isabel M Malet
Isabel Y Whobrey
Mujtaba E Nestle
Juan I Gaucho
Johnson O Whobrey
Nicolas U Chui
Nicolas Q Dilliard
Aruna Q Malet
James Y Caldarera
Jones C Doe
David H Nicka
Julie I Caldarera
Ashley O Gillian
Salvatore I Vocelka
Ivar N Stenseth
Clifford L Morasca
Nicolas K Shinko
Stacey O Bowley
Leja K Saylors
Kadeem W Figeroa
Izzy D Iturbide
Munro L Bowley
Kadeem P Nestle
David S Briddick
IdCountryDate
1000Japan2024-06-06
1001Spain2024-06-10
1002India2024-05-29
1003Brazil2024-06-06
1004Brazil2024-06-19
1005Australia2024-05-28
1006Italy2024-06-13
1007Spain2024-06-13
1008United Kingdom2024-06-17
1009Russia2024-06-05
1010Australia2024-05-28
1011France2024-06-08
1012Germany2024-06-17
1013India2024-06-22
1014India2024-06-14
1015United Kingdom2024-05-25
1016Russia2024-06-17
1017India2024-06-13
1018Australia2024-06-16
1019Russia2024-06-20
1020Australia2024-06-18
1021Japan2024-06-23
1022Brazil2024-06-09
1023Brazil2024-06-14
1024Brazil2024-06-09
1025Germany2024-06-22
1026France2024-05-25
1027Australia2024-05-25
1028Italy2024-06-10
1029Australia2024-06-08
1030India2024-06-17
1031Russia2024-06-10
1032Australia2024-06-14
1033Brazil2024-06-15
1034Russia2024-06-07
1035United Kingdom2024-06-02
1036France2024-06-03
1037Argentina2024-05-29
1038Australia2024-06-08
1039Spain2024-06-17
1040Spain2024-06-08
1041Spain2024-06-14
1042Brazil2024-06-18
1043Russia2024-06-14
1044Russia2024-06-01
1045United Kingdom2024-06-07
1046Argentina2024-06-18
1047Russia2024-05-30
1048Germany2024-05-27
1049Japan2024-06-16

On-Demand Data

NameIdCountryDate
Misaki N Nestle1000Brazil2024-06-06
James F Amigon1001France2024-06-02
Kadeem Q Slusarski1002Brazil2024-06-21
Alejandro A Venere1003Argentina2024-06-01
Julie P Waycott1004Russia2024-06-13
Tony G Nestle1005United Kingdom2024-06-15
Antonio L Chui1006India2024-06-13
Munro X Ruta1007Argentina2024-06-01
Nicolas D Wieser1008Italy2024-06-03
Tony A Rim1009Russia2024-05-28
Johnson P Stenseth1010Spain2024-06-23
Deepesh Q Ostrosky1011United Kingdom2024-06-16
Ashley T Shinko1012Argentina2024-06-18
Nicolas I Royster1013United Kingdom2024-05-26
Arvin D Bowley1014France2024-06-20
Antonio X Sergi1015Japan2024-06-09
Wickens C Gaucho1016India2024-06-15
Silvio H Morasca1017India2024-06-21
Johnson W Ferencz1018Japan2024-06-04
Mujtaba L Iturbide1019Spain2024-06-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues L PerinItalyBernardo Dominic UNQUALIFIED
Ashley U IturbideArgentinaAnna Fali RENEWAL
Maria V MaletSpainOnyama Limba NEW
Johnson E WhobreySpainAnna Fali PROPOSAL
Tony V WaycottRussiaAnna Fali NEW
Faith E ShinkoSpainAsiya Javayant UNQUALIFIED
Leja D PaprockiJapanOnyama Limba QUALIFIED
Deepesh P FlosiArgentinaAmy Elsner QUALIFIED
Jeanfrancois I FerenczJapanIoni Bowcher RENEWAL
Johnson J SergiGermanyStephen Shaw RENEWAL
Tony B SergiCanadaAmy Elsner UNQUALIFIED
Tony W StockhamRussiaStephen Shaw NEW
Cody H BologniaArgentinaAnna Fali QUALIFIED
Leja E VocelkaFranceAsiya Javayant RENEWAL
Isabel P AmigonGermanyAsiya Javayant QUALIFIED
Julie S GillianGermanyElwin Sharvill RENEWAL
Tony E WhobreyItalyElwin Sharvill NEW
Tony T RoysterBrazilIvan Magalhaes NEGOTIATION
Faith X OstroskyUnited KingdomStephen Shaw NEW
Aruna Q VenereGermanyIoni Bowcher UNQUALIFIED
Aruna A KolmetzSpainXuxue Feng QUALIFIED
James U DoeUnited KingdomStephen Shaw NEGOTIATION
Murillo C CampainIndiaIvan Magalhaes UNQUALIFIED
Octavia O WaycottGermanyStephen Shaw QUALIFIED
Leon S OldroydIndiaAmy Elsner NEGOTIATION
Munro A NestleIndiaStephen Shaw NEGOTIATION
Deepesh V StensethJapanXuxue Feng RENEWAL
James D OstroskyIndiaAmy Elsner NEW
Francesco M ButtIndiaElwin Sharvill NEGOTIATION
Adams I BologniaCanadaAnna Fali PROPOSAL
Johnson T SchemmerAustraliaAnna Fali NEGOTIATION
Jennifer H CaudyArgentinaIoni Bowcher PROPOSAL
Greenwood J SchemmerCanadaOnyama Limba NEGOTIATION
Munro D NickaFranceAnna Fali UNQUALIFIED
Johnson T MaletBrazilAsiya Javayant NEW
Emily K BologniaJapanStephen Shaw RENEWAL
Faith K MaletAustraliaElwin Sharvill PROPOSAL
Kaitlin N RulapaughUnited KingdomAnna Fali UNQUALIFIED
Nicolas D FerenczSpainBernardo Dominic PROPOSAL
Cody K DoeIndiaXuxue Feng 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>