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
Silvio P OldroydFranceIvan Magalhaes QUALIFIED
Chavez J IturbideCanadaElwin Sharvill RENEWAL
Jeanfrancois R FlosiArgentinaOnyama Limba NEW
Mayumi P StockhamGermanyElwin Sharvill RENEWAL
Emily R NestleFranceBernardo Dominic UNQUALIFIED
Rodrigues F KolmetzAustraliaXuxue Feng QUALIFIED
Kaitlin O RimIndiaAnna Fali NEW
Tony X MarrierAustraliaStephen Shaw NEGOTIATION
Ivar A FlosiCanadaAsiya Javayant QUALIFIED
Claire C BologniaAustraliaXuxue Feng RENEWAL
Greenwood H RulapaughSpainBernardo Dominic NEW
Juan C BologniaFranceXuxue Feng PROPOSAL
Aruna E SchemmerUnited KingdomStephen Shaw RENEWAL
Maisha D ChuiCanadaAnna Fali UNQUALIFIED
James X RutaJapanAsiya Javayant NEGOTIATION
Jones T CampainCanadaXuxue Feng RENEWAL
Izzy E WhobreyFranceXuxue Feng NEW
Octavia L FlosiUnited KingdomXuxue Feng NEW
Darci M CaldareraGermanyAmy Elsner RENEWAL
Aditya Q SaylorsFranceAsiya Javayant RENEWAL
Jones H NestleIndiaBernardo Dominic PROPOSAL
James K GauchoItalyElwin Sharvill RENEWAL
Tony R RulapaughFranceOnyama Limba QUALIFIED
Ashley X SaylorsJapanBernardo Dominic UNQUALIFIED
Nicolas H MarrierAustraliaStephen Shaw NEGOTIATION
Jennifer Q GauchoAustraliaAmy Elsner UNQUALIFIED
Izzy I BriddickJapanXuxue Feng QUALIFIED
Mujtaba U ShinkoItalyIoni Bowcher PROPOSAL
Aruna A OldroydItalyOnyama Limba RENEWAL
Arvin I ButtIndiaOnyama Limba PROPOSAL
Francesco F BologniaFranceAsiya Javayant UNQUALIFIED
Ashley H OldroydUnited KingdomAmy Elsner NEGOTIATION
Costa W WieserFranceIoni Bowcher UNQUALIFIED
Cody A RulapaughCanadaBernardo Dominic PROPOSAL
Johnson Z DarakjyUnited KingdomAnna Fali UNQUALIFIED
Claire G PoquetteIndiaIoni Bowcher PROPOSAL
Munro Q BowleyCanadaAnna Fali UNQUALIFIED
Emily U GarufiCanadaStephen Shaw PROPOSAL
Isabel T MarrierArgentinaAmy Elsner NEW
Salvatore E ChuiUnited KingdomBernardo Dominic RENEWAL
Alejandro Q InouyeFranceIvan Magalhaes PROPOSAL
Arvin M VocelkaItalyAmy Elsner PROPOSAL
Nicolas H CaldareraRussiaIvan Magalhaes UNQUALIFIED
David F FollerGermanyElwin Sharvill UNQUALIFIED
Maisha W OldroydCanadaXuxue Feng NEW
Claire Q PerinItalyAnna Fali NEGOTIATION
Chavez M TollnerArgentinaAsiya Javayant UNQUALIFIED
Nicolas M PerinUnited KingdomAmy Elsner UNQUALIFIED
Isabel H KolmetzGermanyElwin Sharvill QUALIFIED
Ricardo J OstroskyUnited KingdomAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Mujtaba E ButtGermanyStephen Shaw QUALIFIED
Maria N VocelkaRussiaBernardo Dominic UNQUALIFIED
Emily A FerenczFranceElwin Sharvill UNQUALIFIED
Smith F SlusarskiJapanOnyama Limba UNQUALIFIED
Faith A CaudyJapanIvan Magalhaes PROPOSAL
Greenwood M AlbaresAustraliaAmy Elsner PROPOSAL
Jones W GillianGermanyAnna Fali QUALIFIED
Ashley G TollnerArgentinaAsiya Javayant PROPOSAL
Adams J BriddickIndiaIoni Bowcher UNQUALIFIED
Morrow X GlickSpainAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Octavia Y RimCanada2024-05-04Buckley Miller Wright PROPOSAL77Bernardo Dominic
1001Cody L ButtFrance2024-05-08Feiner Bros RENEWAL44Onyama Limba
1002Kadeem I WhobreyFrance2024-05-09Benton, John B Jr QUALIFIED25Ioni Bowcher
1003Leon K DoeAustralia2024-05-23Chapman, Ross E Esq NEW7Ivan Magalhaes
1004Aruna F MarrierItaly2024-05-07Commercial Press NEW9Stephen Shaw
1005Nicolas W StensethJapan2024-05-28Commercial Press RENEWAL50Anna Fali
1006Costa I PaprockiBrazil2024-05-21Printing Dimensions RENEWAL61Ioni Bowcher
1007Arvin G StockhamGermany2024-05-17Chanay, Jeffrey A Esq UNQUALIFIED97Stephen Shaw
1008Stacey M GlickGermany2024-05-16Commercial Press RENEWAL86Asiya Javayant
1009Deepesh O ChuiBrazil2024-05-28Printing Dimensions NEGOTIATION24Stephen Shaw
1010Isabel U FlosiCanada2024-05-20Feltz Printing Service NEW32Asiya Javayant
1011Silvio P IturbideCanada2024-05-16Chanay, Jeffrey A Esq PROPOSAL90Asiya Javayant
1012Claire G FerenczSpain2024-05-30Buckley Miller Wright NEW8Asiya Javayant
1013Aruna U BowleyFrance2024-05-05Buckley Miller Wright UNQUALIFIED25Anna Fali
1014Antonio K GarufiRussia2024-05-18Commercial Press NEGOTIATION77Bernardo Dominic
1015Jennifer Q NestleAustralia2024-05-10Buckley Miller Wright UNQUALIFIED33Bernardo Dominic
1016Jennifer Z InouyeArgentina2024-05-29Chapman, Ross E Esq UNQUALIFIED87Elwin Sharvill
1017Jeanfrancois T RimSpain2024-05-04Dorl, James J Esq UNQUALIFIED53Stephen Shaw
1018Emily P NestleIndia2024-05-04Buckley Miller Wright NEGOTIATION92Elwin Sharvill
1019Jones H DarakjyJapan2024-05-22Feltz Printing Service NEW94Amy Elsner
1020Aika K DoeArgentina2024-05-28Benton, John B Jr UNQUALIFIED39Xuxue Feng
1021Izzy M MaletRussia2024-05-24Rousseaux, Michael Esq RENEWAL87Ivan Magalhaes
1022Aditya J NickaCanada2024-05-31Buckley Miller Wright NEGOTIATION16Asiya Javayant
1023Morrow J CaudyRussia2024-05-22Chanay, Jeffrey A Esq UNQUALIFIED24Ivan Magalhaes
1024Ivar G WieserBrazil2024-05-18Dorl, James J Esq UNQUALIFIED92Onyama Limba
1025Maisha L ChuiFrance2024-05-26Rangoni Of Florence PROPOSAL94Bernardo Dominic
1026Tony P DoeArgentina2024-05-21King, Christopher A Esq UNQUALIFIED31Stephen Shaw
1027Aika J OldroydIndia2024-05-30Feiner Bros RENEWAL97Amy Elsner
1028Deepesh D SergiItaly2024-05-31Rangoni Of Florence RENEWAL49Onyama Limba
1029Ricardo E GillianGermany2024-05-17Buckley Miller Wright RENEWAL76Bernardo Dominic
1030Ashley K StensethIndia2024-05-14Rangoni Of Florence QUALIFIED87Bernardo Dominic
1031Stacey L GillianRussia2024-05-15Dorl, James J Esq UNQUALIFIED51Asiya Javayant
1032Rodrigues F MarrierUnited Kingdom2024-05-25Feiner Bros RENEWAL37Asiya Javayant
1033Clifford M GillianItaly2024-05-26Chemel, James L Cpa NEGOTIATION89Ivan Magalhaes
1034Kaitlin S PoquetteUnited Kingdom2024-05-10Chapman, Ross E Esq NEW95Ioni Bowcher
1035Sinclair N OldroydAustralia2024-05-21Chemel, James L Cpa PROPOSAL69Stephen Shaw
1036Arvin T AmigonRussia2024-05-22Printing Dimensions RENEWAL60Elwin Sharvill
1037Munro D SchemmerFrance2024-05-17Chapman, Ross E Esq RENEWAL40Bernardo Dominic
1038Faith O CaldareraUnited Kingdom2024-05-17Morlong Associates UNQUALIFIED43Anna Fali
1039David Y SaylorsJapan2024-05-21Buckley Miller Wright NEW12Anna Fali
1040Alejandro U InouyeJapan2024-05-15Truhlar And Truhlar Attys QUALIFIED58Stephen Shaw
1041Mayumi C MacleadRussia2024-05-11Feltz Printing Service RENEWAL19Ivan Magalhaes
1042Johnson Z InouyeAustralia2024-05-05King, Christopher A Esq PROPOSAL53Anna Fali
1043Aruna W SergiJapan2024-05-24Buckley Miller Wright PROPOSAL71Elwin Sharvill
1044Deepesh B MaletJapan2024-06-02King, Christopher A Esq RENEWAL33Elwin Sharvill
1045Maria C PerinUnited Kingdom2024-05-15Truhlar And Truhlar Attys PROPOSAL61Ioni Bowcher
1046Ashley D DoeGermany2024-05-05Printing Dimensions NEW45Elwin Sharvill
1047Wickens U PaprockiCanada2024-05-04Feltz Printing Service RENEWAL21Ioni Bowcher
1048Maisha L RulapaughCanada2024-05-27King, Christopher A Esq NEW69Stephen Shaw
1049Jones B FerenczRussia2024-06-02Rousseaux, Michael Esq NEGOTIATION58Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Juan Z SchemmerIndiaOnyama Limba PROPOSAL
Nicolas B GlickJapanAmy Elsner PROPOSAL
Faith R VocelkaCanadaIvan Magalhaes RENEWAL
Aika E KuskoSpainAsiya Javayant RENEWAL
Stacey U GauchoBrazilElwin Sharvill NEW
Isabel C FollerIndiaBernardo Dominic RENEWAL
Izzy S VocelkaCanadaIvan Magalhaes NEW
Juan F MorascaIndiaElwin Sharvill NEGOTIATION
Adams O PoquetteFranceElwin Sharvill NEW
Chavez T AmigonAustraliaIoni Bowcher NEW
Mujtaba Q OldroydUnited KingdomIvan Magalhaes PROPOSAL
Mayumi T FlosiItalyXuxue Feng RENEWAL
Rodrigues P InouyeFranceOnyama Limba PROPOSAL
Antonio B InouyeArgentinaBernardo Dominic RENEWAL
Jennifer L GarufiSpainStephen Shaw RENEWAL
Aika V ButtFranceOnyama Limba NEGOTIATION
Morrow U DarakjyBrazilIoni Bowcher UNQUALIFIED
Jones C WaycottJapanAsiya Javayant NEGOTIATION
Aditya P MacleadGermanyXuxue Feng UNQUALIFIED
Misaki B NickaSpainStephen Shaw RENEWAL
Juan U ButtRussiaXuxue Feng UNQUALIFIED
Deepesh H SergiSpainStephen Shaw UNQUALIFIED
Tony B ButtFranceStephen Shaw NEGOTIATION
Adams C PaprockiSpainOnyama Limba NEW
Aruna Z GlickItalyAmy Elsner QUALIFIED
Nicolas S CampainCanadaOnyama Limba RENEWAL
Alejandro D StockhamBrazilElwin Sharvill RENEWAL
Murillo I WaycottGermanyStephen Shaw PROPOSAL
Clifford D GarufiItalyAnna Fali RENEWAL
Isabel Q FollerIndiaXuxue Feng RENEWAL
Mayumi K MorascaArgentinaXuxue Feng UNQUALIFIED
Morrow C GarufiIndiaAsiya Javayant PROPOSAL
Murillo W GillianCanadaXuxue Feng PROPOSAL
Claire S DarakjyArgentinaIoni Bowcher PROPOSAL
Salvatore Y MaletJapanIvan Magalhaes QUALIFIED
Arvin N FlosiAustraliaElwin Sharvill NEGOTIATION
Smith D MarrierAustraliaOnyama Limba UNQUALIFIED
Deepesh Y BowleyItalyStephen Shaw NEW
Misaki A RutaSpainAmy Elsner RENEWAL
Jones S DarakjyRussiaOnyama Limba RENEWAL
James C StensethItalyAsiya Javayant NEW
Deepesh Z GillianJapanAnna Fali UNQUALIFIED
Ivar Z RutaFranceElwin Sharvill NEW
David B MacleadIndiaAmy Elsner PROPOSAL
Stacey M SlusarskiSpainAmy Elsner NEGOTIATION
Nicolas T MacleadBrazilElwin Sharvill UNQUALIFIED
Francesco M KuskoJapanIoni Bowcher NEGOTIATION
Sinclair A WhobreyItalyStephen Shaw QUALIFIED
Jefferson K DoeUnited KingdomBernardo Dominic QUALIFIED
Aruna U RulapaughSpainStephen Shaw UNQUALIFIED
Frozen Columns
Name
Jones X Sergi
Sinclair W Kolmetz
Sinclair X Oldroyd
Antonio D Kusko
Greenwood J Gillian
Darci R Inouye
Misaki X Tollner
Kadeem D Darakjy
James L Malet
Aditya A Darakjy
Munro B Flosi
Misaki M Paprocki
Jeanfrancois X Poquette
David Q Glick
David V Darakjy
Aika D Malet
Stacey Q Flosi
Arvin N Ostrosky
Emily Y Vocelka
Aruna X Flosi
Tony F Ferencz
Jennifer X Nestle
Deepesh Y Malet
Jefferson D Caudy
Deepesh F Rulapaugh
Jennifer N Rim
James E Briddick
Munro S Perin
Rodrigues X Nicka
Maria J Kolmetz
Costa G Chui
Stacey G Figeroa
Kadeem A Albares
Johnson L Briddick
Munro R Rim
Jeanfrancois W Flosi
Mujtaba N Iturbide
Stacey F Perin
Kaitlin O Amigon
Emily V Campain
Tony A Amigon
David D Flosi
Jennifer G Sergi
Leja T Poquette
Sinclair S Vocelka
Aruna K Waycott
Maria Q Malet
Emily U Garufi
David J Stenseth
Rodrigues U Whobrey
IdCountryDate
1000India2024-05-11
1001Australia2024-05-13
1002United Kingdom2024-05-21
1003Australia2024-05-20
1004United Kingdom2024-05-28
1005Italy2024-05-28
1006United Kingdom2024-05-20
1007Spain2024-05-24
1008Canada2024-05-09
1009Japan2024-05-11
1010Brazil2024-05-10
1011Australia2024-05-13
1012Argentina2024-05-31
1013India2024-05-10
1014United Kingdom2024-05-24
1015Spain2024-05-16
1016India2024-05-06
1017United Kingdom2024-05-11
1018Canada2024-05-28
1019Brazil2024-05-16
1020Italy2024-05-30
1021Germany2024-05-27
1022India2024-05-30
1023Japan2024-05-28
1024Canada2024-05-12
1025Russia2024-05-25
1026India2024-05-15
1027United Kingdom2024-05-10
1028Australia2024-05-29
1029Brazil2024-05-06
1030India2024-05-31
1031United Kingdom2024-05-23
1032Argentina2024-05-07
1033India2024-05-30
1034Japan2024-05-23
1035Canada2024-05-10
1036Italy2024-05-28
1037Russia2024-05-22
1038India2024-05-27
1039Russia2024-05-13
1040Italy2024-05-10
1041India2024-06-01
1042Italy2024-06-01
1043Brazil2024-05-06
1044Italy2024-05-23
1045France2024-05-15
1046Russia2024-05-25
1047Australia2024-05-21
1048Italy2024-05-29
1049India2024-05-14

On-Demand Data

NameIdCountryDate
Ivar W Chui1000Germany2024-05-13
Isabel V Morasca1001Spain2024-05-13
Murillo F Kolmetz1002Japan2024-05-14
Costa M Perin1003India2024-05-09
Julie C Sergi1004Argentina2024-05-24
Maria A Marrier1005France2024-05-09
Morrow A Caldarera1006Italy2024-05-17
Ricardo M Wieser1007Germany2024-05-09
Deepesh T Royster1008Brazil2024-05-11
Jefferson X Tollner1009Italy2024-06-01
Morrow E Morasca1010Germany2024-05-26
Jones K Gaucho1011Italy2024-05-23
Johnson F Royster1012Argentina2024-06-01
Smith C Slusarski1013Spain2024-05-09
Deepesh Q Inouye1014Canada2024-05-26
Silvio Q Nestle1015Italy2024-05-24
Ivar Z Perin1016Italy2024-05-13
Silvio G Glick1017Italy2024-05-23
David L Vocelka1018Italy2024-05-11
Greenwood P Wieser1019Argentina2024-05-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar P CampainAustraliaIvan Magalhaes UNQUALIFIED
Antonio V DilliardRussiaXuxue Feng UNQUALIFIED
Darci K DarakjyJapanAnna Fali PROPOSAL
Jeanfrancois S AmigonBrazilAsiya Javayant NEW
Kadeem B OldroydJapanOnyama Limba NEW
Tony A ShinkoAustraliaIvan Magalhaes NEW
Faith C StockhamBrazilElwin Sharvill NEW
Aditya Y FigeroaIndiaIvan Magalhaes NEGOTIATION
Leja A RutaArgentinaIoni Bowcher NEGOTIATION
Stacey B StensethAustraliaIoni Bowcher RENEWAL
Maisha H InouyeCanadaAsiya Javayant UNQUALIFIED
Deepesh O FlosiItalyAnna Fali PROPOSAL
Deepesh K StockhamUnited KingdomIvan Magalhaes PROPOSAL
Stacey T CaldareraArgentinaOnyama Limba QUALIFIED
Adams B GarufiAustraliaAsiya Javayant RENEWAL
Johnson K OldroydCanadaIoni Bowcher UNQUALIFIED
Aika P ButtRussiaAnna Fali QUALIFIED
Jones W MorascaFranceXuxue Feng PROPOSAL
Ricardo O ShinkoFranceOnyama Limba QUALIFIED
Mujtaba R OldroydGermanyIoni Bowcher UNQUALIFIED
Juan R DilliardArgentinaOnyama Limba NEW
Faith I AmigonCanadaAnna Fali NEGOTIATION
Jennifer E PaprockiIndiaAsiya Javayant RENEWAL
Leja Y FollerSpainIoni Bowcher NEGOTIATION
Kadeem S IturbideItalyIvan Magalhaes PROPOSAL
Munro Y BologniaItalyBernardo Dominic QUALIFIED
Costa N GauchoUnited KingdomStephen Shaw NEGOTIATION
Adams K OldroydSpainStephen Shaw PROPOSAL
Francesco T BowleyFranceOnyama Limba NEGOTIATION
Ashley U SergiSpainElwin Sharvill NEGOTIATION
David H NestleSpainElwin Sharvill NEGOTIATION
Johnson G MarrierBrazilBernardo Dominic NEGOTIATION
Adams O SlusarskiCanadaXuxue Feng PROPOSAL
Octavia E ShinkoSpainAsiya Javayant NEW
Claire P CaudyItalyBernardo Dominic RENEWAL
Maisha F TollnerGermanyAsiya Javayant NEGOTIATION
Emily T AmigonArgentinaAsiya Javayant QUALIFIED
Tony N RulapaughFranceAmy Elsner QUALIFIED
Maisha X SergiArgentinaAmy Elsner PROPOSAL
Kadeem G SaylorsIndiaBernardo 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>