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
Mayumi C AmigonCanadaXuxue Feng NEW
Costa B PaprockiIndiaAnna Fali NEGOTIATION
Jefferson T RutaArgentinaBernardo Dominic NEW
Mujtaba D MaletRussiaIoni Bowcher UNQUALIFIED
Kadeem O NickaBrazilIoni Bowcher PROPOSAL
Johnson I BriddickSpainAnna Fali NEW
Maisha F BowleyAustraliaElwin Sharvill PROPOSAL
Mayumi P GauchoBrazilXuxue Feng PROPOSAL
Jennifer P CampainJapanIvan Magalhaes NEW
David Y SchemmerArgentinaElwin Sharvill QUALIFIED
Kadeem H FollerCanadaStephen Shaw PROPOSAL
Faith M SergiCanadaElwin Sharvill UNQUALIFIED
Juan K AmigonRussiaAnna Fali RENEWAL
Aditya C IturbideItalyXuxue Feng NEW
Leja R DarakjyItalyIvan Magalhaes NEW
Ivar K GauchoRussiaIoni Bowcher RENEWAL
Johnson I ChuiItalyOnyama Limba PROPOSAL
Alejandro O WieserBrazilIoni Bowcher NEGOTIATION
Antonio Z RimIndiaOnyama Limba NEGOTIATION
Faith N SergiArgentinaBernardo Dominic NEGOTIATION
Adams C OstroskyJapanStephen Shaw UNQUALIFIED
Cody V ButtItalyStephen Shaw RENEWAL
Emily X KuskoJapanElwin Sharvill QUALIFIED
Wickens Q KuskoJapanElwin Sharvill NEW
Alejandro N StockhamSpainIvan Magalhaes NEGOTIATION
Munro E MacleadArgentinaIvan Magalhaes PROPOSAL
Smith O SchemmerCanadaIvan Magalhaes PROPOSAL
Maisha H TollnerArgentinaStephen Shaw PROPOSAL
Salvatore S AmigonItalyIvan Magalhaes RENEWAL
Jeanfrancois Q PerinFranceAsiya Javayant NEGOTIATION
Izzy Z MacleadCanadaAsiya Javayant QUALIFIED
Munro N RulapaughCanadaIvan Magalhaes QUALIFIED
Clifford W AlbaresUnited KingdomAmy Elsner QUALIFIED
Leja K SchemmerFranceAmy Elsner NEW
James D MaletGermanyAmy Elsner PROPOSAL
Munro R OldroydIndiaElwin Sharvill QUALIFIED
Aika F RutaJapanStephen Shaw UNQUALIFIED
Jones M WaycottGermanyIvan Magalhaes PROPOSAL
Deepesh Z DilliardUnited KingdomAmy Elsner NEW
Octavia B ButtGermanyBernardo Dominic QUALIFIED
Jeanfrancois S OstroskySpainIoni Bowcher RENEWAL
Ashley H KolmetzCanadaIvan Magalhaes NEGOTIATION
Nicolas T KuskoIndiaAnna Fali NEGOTIATION
Costa H BriddickCanadaIvan Magalhaes PROPOSAL
Clifford G DoeSpainStephen Shaw QUALIFIED
Claire S MarrierGermanyStephen Shaw UNQUALIFIED
Isabel U MaletRussiaBernardo Dominic NEGOTIATION
Maisha U NickaUnited KingdomIvan Magalhaes QUALIFIED
Alejandro I NestleArgentinaAnna Fali NEW
Faith J GauchoCanadaIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Silvio B OstroskyJapanAmy Elsner PROPOSAL
Wickens P MacleadArgentinaIoni Bowcher UNQUALIFIED
Jennifer N VenereSpainIvan Magalhaes NEW
Chavez C SergiUnited KingdomAmy Elsner PROPOSAL
Francesco L BologniaItalyAmy Elsner QUALIFIED
Sinclair L FerenczArgentinaAnna Fali PROPOSAL
Mayumi L CaudyAustraliaStephen Shaw UNQUALIFIED
Faith R StockhamAustraliaElwin Sharvill NEGOTIATION
Aruna Y StockhamSpainXuxue Feng QUALIFIED
Clifford C NestleFranceIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair E IturbideArgentina2024-08-31Feiner Bros UNQUALIFIED84Stephen Shaw
1001Faith Q PoquetteSpain2024-09-15Chanay, Jeffrey A Esq RENEWAL52Ioni Bowcher
1002Ricardo B NestleArgentina2024-09-03Dorl, James J Esq NEW76Bernardo Dominic
1003James M VocelkaArgentina2024-08-26Feltz Printing Service PROPOSAL57Elwin Sharvill
1004Adams S CaldareraJapan2024-09-24Commercial Press QUALIFIED69Ioni Bowcher
1005Mayumi Q PaprockiCanada2024-09-03Truhlar And Truhlar Attys QUALIFIED21Asiya Javayant
1006Mayumi B BriddickIndia2024-09-11Chapman, Ross E Esq NEGOTIATION0Ioni Bowcher
1007Octavia K CampainCanada2024-09-23Truhlar And Truhlar Attys QUALIFIED31Elwin Sharvill
1008Ricardo C StockhamCanada2024-09-02Chanay, Jeffrey A Esq NEGOTIATION46Onyama Limba
1009Jennifer E SlusarskiJapan2024-09-10Chanay, Jeffrey A Esq UNQUALIFIED17Amy Elsner
1010Kadeem X DarakjyUnited Kingdom2024-09-24Chapman, Ross E Esq RENEWAL22Elwin Sharvill
1011Morrow C GauchoJapan2024-09-22Commercial Press PROPOSAL28Stephen Shaw
1012James M WaycottJapan2024-09-01Chanay, Jeffrey A Esq NEW1Bernardo Dominic
1013Antonio X FlosiCanada2024-09-02Chapman, Ross E Esq UNQUALIFIED78Stephen Shaw
1014Mujtaba Y PaprockiItaly2024-09-17Morlong Associates PROPOSAL41Amy Elsner
1015Maisha L GillianItaly2024-09-13Truhlar And Truhlar Attys RENEWAL67Asiya Javayant
1016Murillo W RoysterArgentina2024-09-16Buckley Miller Wright UNQUALIFIED4Onyama Limba
1017Tony O MaletRussia2024-09-04Dorl, James J Esq NEGOTIATION61Ioni Bowcher
1018James C GlickItaly2024-08-28Chanay, Jeffrey A Esq PROPOSAL58Onyama Limba
1019Octavia T GillianArgentina2024-09-06Benton, John B Jr RENEWAL42Ivan Magalhaes
1020Jefferson S RutaSpain2024-09-05Chanay, Jeffrey A Esq UNQUALIFIED77Stephen Shaw
1021James H TollnerGermany2024-09-06Buckley Miller Wright UNQUALIFIED96Ioni Bowcher
1022Emily K SergiJapan2024-08-29Chapman, Ross E Esq PROPOSAL17Xuxue Feng
1023Adams E ShinkoUnited Kingdom2024-09-06Rousseaux, Michael Esq QUALIFIED66Bernardo Dominic
1024Leja K CaldareraRussia2024-09-18Buckley Miller Wright NEW23Bernardo Dominic
1025Greenwood O RutaAustralia2024-09-07Rousseaux, Michael Esq UNQUALIFIED68Elwin Sharvill
1026Jones Q ChuiItaly2024-08-27Feiner Bros RENEWAL65Stephen Shaw
1027Salvatore L BologniaFrance2024-08-30King, Christopher A Esq PROPOSAL83Bernardo Dominic
1028Claire W NestleAustralia2024-09-07Chanay, Jeffrey A Esq RENEWAL3Stephen Shaw
1029Chavez G MaletIndia2024-09-24Rangoni Of Florence NEW98Elwin Sharvill
1030Jennifer C WieserUnited Kingdom2024-09-13Truhlar And Truhlar Attys QUALIFIED56Amy Elsner
1031Murillo R CaudyGermany2024-09-07Dorl, James J Esq NEW84Onyama Limba
1032Stacey D InouyeArgentina2024-09-06Feltz Printing Service UNQUALIFIED88Amy Elsner
1033Maria L CaldareraArgentina2024-09-05Chanay, Jeffrey A Esq RENEWAL54Stephen Shaw
1034David Z MacleadItaly2024-08-27Buckley Miller Wright NEGOTIATION6Amy Elsner
1035Stacey K MarrierAustralia2024-09-06Dorl, James J Esq NEGOTIATION99Elwin Sharvill
1036Rodrigues P OldroydUnited Kingdom2024-09-14Benton, John B Jr NEW91Stephen Shaw
1037Munro N InouyeUnited Kingdom2024-09-06Feiner Bros RENEWAL3Stephen Shaw
1038Rodrigues N IturbideCanada2024-09-19Chanay, Jeffrey A Esq QUALIFIED80Ioni Bowcher
1039Costa T NickaIndia2024-09-13Dorl, James J Esq PROPOSAL58Stephen Shaw
1040Maisha C ShinkoCanada2024-09-22Printing Dimensions QUALIFIED2Elwin Sharvill
1041Leon X CaudyGermany2024-09-04Printing Dimensions UNQUALIFIED26Anna Fali
1042Johnson D CaudyUnited Kingdom2024-09-10Rangoni Of Florence UNQUALIFIED46Ivan Magalhaes
1043Ivar A KolmetzBrazil2024-08-30King, Christopher A Esq PROPOSAL78Amy Elsner
1044Aika V BriddickCanada2024-08-31Morlong Associates PROPOSAL22Onyama Limba
1045Deepesh C CaldareraFrance2024-09-14King, Christopher A Esq QUALIFIED54Asiya Javayant
1046Kadeem P RulapaughIndia2024-09-21Morlong Associates PROPOSAL97Anna Fali
1047Munro N BowleyAustralia2024-09-14Rousseaux, Michael Esq PROPOSAL37Elwin Sharvill
1048Jeanfrancois Z IturbideIndia2024-09-15King, Christopher A Esq QUALIFIED56Elwin Sharvill
1049Maria L OldroydIndia2024-09-01Commercial Press RENEWAL99Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Smith P SaylorsFranceElwin Sharvill NEW
Jefferson J IturbideSpainIvan Magalhaes QUALIFIED
Juan M VocelkaUnited KingdomOnyama Limba PROPOSAL
Murillo G IturbideJapanElwin Sharvill NEW
Leon K GarufiFranceAsiya Javayant PROPOSAL
Leon T ChuiJapanIoni Bowcher RENEWAL
Johnson C GarufiAustraliaElwin Sharvill NEGOTIATION
Faith I BowleyAustraliaIoni Bowcher UNQUALIFIED
Maisha W BowleyArgentinaElwin Sharvill NEGOTIATION
James R ShinkoCanadaElwin Sharvill PROPOSAL
Jennifer Z WhobreyIndiaOnyama Limba QUALIFIED
Ashley F FigeroaUnited KingdomAnna Fali NEW
Rodrigues D FollerGermanyAnna Fali PROPOSAL
Aditya O CaudyItalyXuxue Feng PROPOSAL
Isabel V GillianAustraliaIoni Bowcher NEW
Ivar G TollnerIndiaIvan Magalhaes QUALIFIED
Faith V MacleadGermanyAmy Elsner RENEWAL
Leja K PerinBrazilXuxue Feng NEW
Stacey Z DilliardSpainStephen Shaw RENEWAL
Ricardo F CaldareraGermanyIvan Magalhaes RENEWAL
Rodrigues T ChuiJapanStephen Shaw PROPOSAL
Darci Y MarrierAustraliaOnyama Limba NEW
Ricardo U MaletGermanyXuxue Feng NEW
Darci J FlosiSpainOnyama Limba UNQUALIFIED
Ricardo G BologniaUnited KingdomAmy Elsner QUALIFIED
Cody B MarrierBrazilIoni Bowcher NEGOTIATION
Morrow L CampainCanadaXuxue Feng UNQUALIFIED
Leon K KuskoFranceAmy Elsner NEGOTIATION
Ricardo N MorascaItalyXuxue Feng QUALIFIED
Arvin Z WaycottRussiaIoni Bowcher UNQUALIFIED
Kaitlin J GlickFranceIoni Bowcher QUALIFIED
Greenwood G RulapaughGermanyBernardo Dominic UNQUALIFIED
Greenwood D GarufiArgentinaIvan Magalhaes NEGOTIATION
Murillo Y SaylorsCanadaIvan Magalhaes NEW
Smith P GarufiBrazilAsiya Javayant QUALIFIED
James Z OstroskyAustraliaStephen Shaw UNQUALIFIED
Costa Z VenereSpainStephen Shaw NEW
Jeanfrancois F WhobreyRussiaBernardo Dominic NEGOTIATION
Faith Z KuskoJapanIvan Magalhaes NEGOTIATION
Mujtaba U PoquetteIndiaAmy Elsner UNQUALIFIED
Munro F MorascaItalyAmy Elsner QUALIFIED
Silvio T RimAustraliaBernardo Dominic QUALIFIED
Darci E MacleadItalyIoni Bowcher PROPOSAL
Jennifer Z VocelkaFranceBernardo Dominic NEGOTIATION
Jeanfrancois B NestleJapanAsiya Javayant UNQUALIFIED
Tony L StockhamItalyAsiya Javayant NEW
Silvio O MarrierRussiaElwin Sharvill UNQUALIFIED
Arvin S VocelkaBrazilXuxue Feng NEW
Murillo T CampainSpainIvan Magalhaes PROPOSAL
Jefferson Q MaletIndiaAnna Fali NEW
Frozen Columns
Name
Aruna D Kolmetz
Antonio K Chui
Emily F Bolognia
Johnson B Figeroa
Emily R Caudy
Antonio R Whobrey
Jefferson X Caldarera
Misaki C Marrier
Jones B Iturbide
Arvin B Maclead
Jefferson S Bolognia
Julie E Inouye
Costa P Caudy
Alejandro A Figeroa
Maria Y Morasca
Greenwood A Sergi
Leja H Sergi
Kadeem W Doe
Maisha Q Garufi
Leja A Gillian
Juan X Garufi
Izzy D Ferencz
Costa X Darakjy
Izzy S Stenseth
Clifford I Marrier
James Q Caudy
Misaki I Sergi
Sinclair F Campain
Tony X Marrier
Leja O Garufi
Izzy K Glick
Izzy L Gillian
Adams C Nestle
Tony G Bolognia
Rodrigues B Shinko
Deepesh Y Schemmer
Murillo X Gillian
Tony P Paprocki
Morrow I Kusko
Mujtaba F Albares
Izzy W Nestle
James H Albares
Clifford Y Poquette
James Y Ostrosky
Kadeem V Briddick
Ivar A Rulapaugh
Alejandro Z Rulapaugh
Chavez H Venere
Mujtaba J Venere
Salvatore J Figeroa
IdCountryDate
1000Argentina2024-09-11
1001Japan2024-09-17
1002Argentina2024-09-11
1003Argentina2024-09-21
1004Canada2024-09-23
1005Italy2024-08-28
1006Japan2024-09-16
1007Australia2024-09-12
1008France2024-09-17
1009Australia2024-08-30
1010Canada2024-09-10
1011Spain2024-09-11
1012Russia2024-09-16
1013Argentina2024-09-21
1014Germany2024-09-16
1015Germany2024-09-01
1016Japan2024-09-09
1017Canada2024-09-04
1018Russia2024-09-21
1019United Kingdom2024-08-31
1020Canada2024-09-13
1021Russia2024-09-09
1022Canada2024-09-21
1023India2024-09-17
1024Russia2024-08-26
1025Russia2024-08-29
1026United Kingdom2024-09-14
1027Australia2024-08-29
1028Japan2024-09-04
1029Brazil2024-08-31
1030Japan2024-08-27
1031United Kingdom2024-09-14
1032Canada2024-09-09
1033Russia2024-09-24
1034Canada2024-08-29
1035Argentina2024-08-30
1036United Kingdom2024-09-13
1037Canada2024-09-10
1038United Kingdom2024-09-08
1039Italy2024-09-10
1040Canada2024-09-02
1041United Kingdom2024-09-06
1042Italy2024-09-01
1043Brazil2024-09-23
1044Argentina2024-08-29
1045India2024-09-05
1046Australia2024-08-27
1047Spain2024-09-02
1048Italy2024-09-19
1049Australia2024-09-21

On-Demand Data

NameIdCountryDate
Julie Q Bolognia1000Spain2024-09-15
Julie F Stockham1001France2024-09-14
Francesco O Bolognia1002France2024-09-18
Juan X Doe1003Spain2024-09-09
Silvio V Ostrosky1004Australia2024-09-02
Emily V Albares1005Japan2024-09-17
Deepesh D Whobrey1006Argentina2024-09-19
Adams K Slusarski1007India2024-09-21
Faith Q Darakjy1008United Kingdom2024-09-07
Ricardo M Dilliard1009Canada2024-08-28
Clifford T Nicka1010Brazil2024-09-15
Octavia J Darakjy1011Russia2024-09-06
David L Briddick1012Spain2024-08-30
Francesco P Glick1013France2024-08-31
Stacey C Butt1014Argentina2024-08-28
Tony O Figeroa1015United Kingdom2024-08-28
Izzy I Kusko1016Italy2024-09-11
Ricardo V Caldarera1017United Kingdom2024-09-04
David U Marrier1018Germany2024-09-01
Johnson G Amigon1019India2024-09-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley H WieserJapanIoni Bowcher NEGOTIATION
Mayumi C GlickAustraliaAsiya Javayant RENEWAL
Emily O VenereJapanIoni Bowcher NEW
Tony D VenereArgentinaXuxue Feng UNQUALIFIED
Mujtaba G VocelkaJapanAsiya Javayant NEW
Nicolas A KolmetzFranceIoni Bowcher NEGOTIATION
Juan J FollerItalyAmy Elsner NEW
Aika U ButtFranceAmy Elsner NEGOTIATION
Deepesh L FerenczArgentinaXuxue Feng UNQUALIFIED
Wickens Y AlbaresItalyAsiya Javayant UNQUALIFIED
Greenwood W WieserArgentinaIoni Bowcher PROPOSAL
Jeanfrancois B DilliardRussiaElwin Sharvill UNQUALIFIED
Maisha Q RulapaughUnited KingdomElwin Sharvill RENEWAL
Salvatore V BriddickGermanyAnna Fali NEGOTIATION
Murillo V FollerArgentinaAsiya Javayant NEW
Arvin E MaletRussiaOnyama Limba QUALIFIED
Greenwood Q NickaFranceOnyama Limba UNQUALIFIED
Julie S KolmetzItalyStephen Shaw UNQUALIFIED
Jones D CampainBrazilAnna Fali UNQUALIFIED
Ivar B CaldareraIndiaOnyama Limba NEGOTIATION
Rodrigues D PerinGermanyAsiya Javayant NEW
Arvin R PaprockiBrazilAnna Fali RENEWAL
Claire D RimArgentinaBernardo Dominic NEW
Salvatore W BologniaGermanyAsiya Javayant UNQUALIFIED
Tony I FollerRussiaElwin Sharvill RENEWAL
Isabel Z ButtSpainIoni Bowcher PROPOSAL
Cody W SlusarskiJapanStephen Shaw NEW
Maisha O BowleyIndiaIoni Bowcher UNQUALIFIED
Leja T GlickSpainStephen Shaw PROPOSAL
Rodrigues Y SergiSpainElwin Sharvill NEGOTIATION
Mayumi G SchemmerRussiaOnyama Limba UNQUALIFIED
Julie Q BriddickFranceAnna Fali UNQUALIFIED
Julie E MorascaSpainOnyama Limba QUALIFIED
Juan A WhobreyRussiaIoni Bowcher RENEWAL
Rodrigues C DarakjyCanadaElwin Sharvill NEGOTIATION
Ivar W RoysterUnited KingdomIoni Bowcher RENEWAL
Salvatore C RimUnited KingdomOnyama Limba NEGOTIATION
Jones S VocelkaRussiaIvan Magalhaes PROPOSAL
James X TollnerItalyElwin Sharvill PROPOSAL
Mujtaba X PoquetteUnited KingdomBernardo Dominic 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>