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
Greenwood J SchemmerRussiaIvan Magalhaes PROPOSAL
Antonio Q MorascaArgentinaAnna Fali RENEWAL
David B KolmetzIndiaIvan Magalhaes UNQUALIFIED
Clifford D AlbaresSpainAnna Fali NEW
Clifford S NestleItalyBernardo Dominic RENEWAL
David Z WhobreyIndiaAnna Fali RENEWAL
Chavez Z RimUnited KingdomElwin Sharvill QUALIFIED
Misaki Z RulapaughUnited KingdomAnna Fali RENEWAL
Jeanfrancois I BriddickAustraliaOnyama Limba NEGOTIATION
Jones T StockhamRussiaIvan Magalhaes PROPOSAL
Francesco H VenereUnited KingdomXuxue Feng UNQUALIFIED
David X VenereUnited KingdomXuxue Feng RENEWAL
Alejandro M CampainGermanyIvan Magalhaes UNQUALIFIED
Mayumi S WaycottCanadaIvan Magalhaes NEGOTIATION
Darci H GlickBrazilAmy Elsner NEW
Nicolas O RoysterRussiaXuxue Feng QUALIFIED
Sinclair Z FollerUnited KingdomXuxue Feng PROPOSAL
Leon Z WieserAustraliaIoni Bowcher PROPOSAL
Misaki L BowleyRussiaXuxue Feng NEW
Morrow E InouyeRussiaBernardo Dominic RENEWAL
Rodrigues H BowleyFranceAmy Elsner UNQUALIFIED
Jefferson D FlosiArgentinaBernardo Dominic RENEWAL
Claire O SaylorsJapanOnyama Limba NEGOTIATION
Julie S FigeroaRussiaXuxue Feng UNQUALIFIED
Murillo J CaldareraFranceBernardo Dominic QUALIFIED
Kadeem A ShinkoIndiaXuxue Feng UNQUALIFIED
David G StensethRussiaIvan Magalhaes NEGOTIATION
Kadeem R VocelkaItalyBernardo Dominic PROPOSAL
Kadeem P RulapaughAustraliaAmy Elsner UNQUALIFIED
Leja I IturbideRussiaAmy Elsner PROPOSAL
Jennifer C PoquetteUnited KingdomOnyama Limba QUALIFIED
Izzy F WaycottRussiaBernardo Dominic PROPOSAL
Alejandro M FlosiAustraliaIvan Magalhaes NEGOTIATION
Cody Z BriddickArgentinaXuxue Feng NEW
Clifford N MaletGermanyAsiya Javayant UNQUALIFIED
Clifford M FerenczItalyElwin Sharvill NEGOTIATION
Alejandro N ChuiIndiaIoni Bowcher RENEWAL
Smith K RoysterUnited KingdomOnyama Limba PROPOSAL
Isabel Y RimCanadaElwin Sharvill PROPOSAL
Aika W WaycottArgentinaOnyama Limba NEGOTIATION
Aruna A AlbaresUnited KingdomOnyama Limba UNQUALIFIED
Silvio E NestleFranceXuxue Feng NEW
Salvatore A RoysterFranceOnyama Limba UNQUALIFIED
Clifford U VenereIndiaBernardo Dominic RENEWAL
Cody Z DarakjyAustraliaElwin Sharvill NEGOTIATION
Ashley O SlusarskiRussiaStephen Shaw QUALIFIED
Julie B GlickFranceXuxue Feng NEW
Faith A GauchoBrazilAsiya Javayant RENEWAL
Izzy I MaletArgentinaAsiya Javayant UNQUALIFIED
Aruna B OstroskyBrazilAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Mayumi S FlosiItalyBernardo Dominic NEW
Maisha E FollerBrazilOnyama Limba QUALIFIED
Leja P ShinkoIndiaXuxue Feng NEGOTIATION
Octavia L MaletUnited KingdomXuxue Feng PROPOSAL
Ivar V VenereItalyStephen Shaw QUALIFIED
David N DarakjyCanadaElwin Sharvill NEGOTIATION
Deepesh Z DoeUnited KingdomBernardo Dominic QUALIFIED
Sinclair R OstroskyBrazilAsiya Javayant NEGOTIATION
Cody R MaletItalyOnyama Limba NEGOTIATION
Ashley G DilliardItalyElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley Q WieserRussia2024-05-24Feltz Printing Service UNQUALIFIED66Anna Fali
1001Isabel B FigeroaBrazil2024-06-08Benton, John B Jr NEW8Stephen Shaw
1002Faith B BriddickItaly2024-05-31King, Christopher A Esq NEGOTIATION21Elwin Sharvill
1003Ivar Z AmigonSpain2024-06-01Chapman, Ross E Esq NEW93Elwin Sharvill
1004Cody S GillianIndia2024-05-29Printing Dimensions NEW16Xuxue Feng
1005Mujtaba A MarrierBrazil2024-06-04Feltz Printing Service QUALIFIED8Elwin Sharvill
1006Sinclair I AmigonGermany2024-06-09Feiner Bros UNQUALIFIED93Xuxue Feng
1007Greenwood W SergiJapan2024-05-25Chemel, James L Cpa UNQUALIFIED37Anna Fali
1008Mujtaba I MacleadJapan2024-06-01Chapman, Ross E Esq RENEWAL0Amy Elsner
1009Izzy I OldroydUnited Kingdom2024-06-22Dorl, James J Esq NEW59Anna Fali
1010Darci Q WaycottRussia2024-05-25Printing Dimensions PROPOSAL99Ivan Magalhaes
1011Leja W MorascaAustralia2024-05-25Feltz Printing Service PROPOSAL61Onyama Limba
1012Jefferson T CaldareraCanada2024-06-21Chapman, Ross E Esq NEW97Elwin Sharvill
1013Mujtaba M GillianIndia2024-06-22Feltz Printing Service PROPOSAL39Xuxue Feng
1014Arvin S DilliardGermany2024-06-15Rangoni Of Florence QUALIFIED47Amy Elsner
1015Aruna R AlbaresIndia2024-05-31King, Christopher A Esq NEW87Onyama Limba
1016Darci K AmigonJapan2024-05-29Morlong Associates NEW72Bernardo Dominic
1017Darci P WaycottIndia2024-06-14Truhlar And Truhlar Attys RENEWAL25Ivan Magalhaes
1018Deepesh Z RutaCanada2024-06-11Feltz Printing Service NEGOTIATION75Ioni Bowcher
1019Juan R MaletSpain2024-06-01Chapman, Ross E Esq NEW32Amy Elsner
1020Emily A NestleBrazil2024-06-12Feltz Printing Service NEW73Anna Fali
1021Kaitlin U RoysterJapan2024-06-17Printing Dimensions PROPOSAL0Xuxue Feng
1022Juan J SaylorsArgentina2024-06-20Feiner Bros QUALIFIED6Elwin Sharvill
1023Sinclair R WaycottRussia2024-05-24Feltz Printing Service UNQUALIFIED5Anna Fali
1024Francesco L BowleyItaly2024-06-10Commercial Press RENEWAL94Elwin Sharvill
1025Julie Y WhobreyArgentina2024-06-04Chanay, Jeffrey A Esq NEW33Onyama Limba
1026Ashley Y DilliardUnited Kingdom2024-06-19Feltz Printing Service QUALIFIED55Elwin Sharvill
1027Wickens U GauchoBrazil2024-06-10Buckley Miller Wright QUALIFIED76Ioni Bowcher
1028Aika J GarufiUnited Kingdom2024-05-25Commercial Press QUALIFIED93Ioni Bowcher
1029Greenwood U SaylorsUnited Kingdom2024-06-04Rousseaux, Michael Esq RENEWAL57Asiya Javayant
1030Stacey N MacleadJapan2024-06-21Benton, John B Jr UNQUALIFIED98Xuxue Feng
1031Johnson G CampainAustralia2024-06-16Chanay, Jeffrey A Esq RENEWAL22Ioni Bowcher
1032Greenwood M RoysterRussia2024-06-02King, Christopher A Esq QUALIFIED87Xuxue Feng
1033Juan I BologniaSpain2024-06-12Morlong Associates NEGOTIATION39Asiya Javayant
1034Greenwood J DoeCanada2024-06-19Feltz Printing Service NEGOTIATION95Asiya Javayant
1035Murillo R PaprockiCanada2024-06-01Rousseaux, Michael Esq QUALIFIED21Anna Fali
1036Arvin S DoeBrazil2024-06-02King, Christopher A Esq QUALIFIED66Bernardo Dominic
1037Octavia Y MacleadSpain2024-05-27King, Christopher A Esq QUALIFIED19Elwin Sharvill
1038Emily K SaylorsJapan2024-06-05King, Christopher A Esq NEW7Anna Fali
1039Arvin J RoysterFrance2024-05-28Dorl, James J Esq RENEWAL89Bernardo Dominic
1040Maria M SaylorsJapan2024-06-14Morlong Associates UNQUALIFIED2Stephen Shaw
1041Isabel T StockhamBrazil2024-05-26Rangoni Of Florence NEGOTIATION19Anna Fali
1042Wickens E CaldareraUnited Kingdom2024-06-01Feltz Printing Service PROPOSAL77Amy Elsner
1043Rodrigues Y RimItaly2024-06-17Chanay, Jeffrey A Esq RENEWAL36Ivan Magalhaes
1044Stacey V MorascaGermany2024-05-28Rousseaux, Michael Esq UNQUALIFIED53Onyama Limba
1045Isabel E NickaIndia2024-06-21Dorl, James J Esq PROPOSAL53Ivan Magalhaes
1046Mujtaba V FlosiArgentina2024-06-21Morlong Associates PROPOSAL42Amy Elsner
1047Stacey M RulapaughFrance2024-06-01Feltz Printing Service RENEWAL61Xuxue Feng
1048Octavia V GarufiIndia2024-06-11Feltz Printing Service NEW76Elwin Sharvill
1049Ricardo H SlusarskiSpain2024-06-16Truhlar And Truhlar Attys NEGOTIATION80Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Smith L RoysterUnited KingdomBernardo Dominic PROPOSAL
Aruna P GauchoJapanAsiya Javayant NEGOTIATION
Julie C RulapaughCanadaAmy Elsner RENEWAL
Leon W SaylorsArgentinaElwin Sharvill QUALIFIED
Morrow M KuskoItalyStephen Shaw NEGOTIATION
Aruna N PerinSpainStephen Shaw RENEWAL
Juan L WaycottFranceIvan Magalhaes RENEWAL
Smith W RoysterUnited KingdomStephen Shaw UNQUALIFIED
Costa D SaylorsJapanOnyama Limba UNQUALIFIED
James C SchemmerAustraliaIvan Magalhaes QUALIFIED
Faith J FollerItalyBernardo Dominic PROPOSAL
Kadeem Y SlusarskiJapanIvan Magalhaes QUALIFIED
Maria G VenereBrazilStephen Shaw NEW
Juan U NestleItalyXuxue Feng UNQUALIFIED
Smith R RoysterSpainBernardo Dominic NEGOTIATION
Aruna N PaprockiItalyElwin Sharvill PROPOSAL
Maisha A PoquetteFranceIoni Bowcher RENEWAL
Antonio K CaldareraRussiaIvan Magalhaes UNQUALIFIED
Octavia E InouyeUnited KingdomAsiya Javayant RENEWAL
Sinclair P AmigonJapanAmy Elsner PROPOSAL
Leon T GauchoGermanyStephen Shaw NEGOTIATION
Julie Z GlickIndiaStephen Shaw PROPOSAL
Juan R SaylorsItalyAnna Fali RENEWAL
Darci K KuskoBrazilXuxue Feng NEGOTIATION
Tony A DoeJapanBernardo Dominic PROPOSAL
Salvatore C NestleFranceOnyama Limba UNQUALIFIED
Cody R RimAustraliaAmy Elsner UNQUALIFIED
Jeanfrancois H RutaGermanyXuxue Feng QUALIFIED
Rodrigues U MarrierGermanyIvan Magalhaes RENEWAL
Alejandro V OstroskyItalyAmy Elsner QUALIFIED
Kadeem Q CaldareraCanadaOnyama Limba QUALIFIED
Jeanfrancois Y MaletJapanIvan Magalhaes RENEWAL
Morrow G PoquetteUnited KingdomIvan Magalhaes UNQUALIFIED
Silvio Q CampainRussiaIvan Magalhaes NEW
Adams E PaprockiItalyIoni Bowcher UNQUALIFIED
Rodrigues V OstroskyUnited KingdomIoni Bowcher RENEWAL
Kadeem R OldroydIndiaAsiya Javayant NEW
Greenwood E BriddickCanadaAmy Elsner UNQUALIFIED
Faith D ShinkoUnited KingdomOnyama Limba UNQUALIFIED
Silvio P MaletIndiaIoni Bowcher PROPOSAL
Salvatore D AmigonFranceIvan Magalhaes NEGOTIATION
Claire F AlbaresBrazilBernardo Dominic RENEWAL
Octavia G IturbideSpainElwin Sharvill NEW
Wickens X FollerBrazilAsiya Javayant RENEWAL
Johnson W ButtSpainAmy Elsner NEW
Cody P BriddickJapanAmy Elsner PROPOSAL
Jeanfrancois G MarrierAustraliaIvan Magalhaes RENEWAL
Clifford S RulapaughIndiaOnyama Limba RENEWAL
Maria T VocelkaJapanAmy Elsner NEGOTIATION
Silvio C FlosiCanadaOnyama Limba NEW
Frozen Columns
Name
Tony Y Poquette
David T Rim
Morrow L Flosi
Tony W Malet
Johnson A Malet
Leon I Bolognia
Tony Q Stenseth
David G Garufi
Maria F Venere
Kaitlin I Royster
Adams S Stenseth
Johnson M Nestle
Tony C Darakjy
Silvio H Butt
Tony P Stenseth
Stacey G Rim
Sinclair B Slusarski
Claire V Malet
Jeanfrancois Q Gaucho
Cody L Schemmer
Jennifer V Slusarski
Juan E Malet
Maria G Flosi
David Q Tollner
Johnson L Waycott
Adams A Flosi
Aruna R Flosi
Darci T Royster
Izzy E Perin
Isabel Z Bowley
Stacey P Perin
Juan F Foller
Deepesh F Venere
Rodrigues H Ostrosky
Jefferson Y Shinko
Francesco U Paprocki
Wickens H Slusarski
Izzy D Royster
Johnson T Stenseth
Aditya F Caudy
Cody X Garufi
Izzy Q Poquette
Ivar E Perin
Arvin F Oldroyd
Ashley R Venere
Aditya F Malet
Jeanfrancois B Perin
Adams T Maclead
Arvin C Paprocki
Murillo J Butt
IdCountryDate
1000Spain2024-05-30
1001Spain2024-05-30
1002Germany2024-06-09
1003United Kingdom2024-06-08
1004Brazil2024-06-12
1005India2024-06-04
1006India2024-06-15
1007Australia2024-06-07
1008Italy2024-06-15
1009Italy2024-05-26
1010Brazil2024-05-31
1011Australia2024-06-09
1012Russia2024-06-10
1013Germany2024-05-30
1014Russia2024-05-28
1015Canada2024-05-27
1016Germany2024-05-27
1017Russia2024-05-24
1018France2024-06-17
1019Germany2024-06-07
1020Russia2024-05-31
1021Canada2024-06-22
1022Brazil2024-06-20
1023Argentina2024-06-06
1024Brazil2024-05-28
1025Russia2024-06-05
1026France2024-06-14
1027Russia2024-05-25
1028Australia2024-06-19
1029Argentina2024-06-01
1030Japan2024-06-11
1031Japan2024-06-17
1032Germany2024-06-12
1033Canada2024-06-09
1034Japan2024-05-27
1035Spain2024-05-25
1036Russia2024-06-14
1037Argentina2024-06-20
1038Brazil2024-05-31
1039Canada2024-06-15
1040Germany2024-06-19
1041Japan2024-06-08
1042Japan2024-05-27
1043Australia2024-06-13
1044France2024-06-18
1045Canada2024-06-13
1046Canada2024-06-18
1047India2024-06-19
1048Germany2024-06-13
1049Italy2024-05-24

On-Demand Data

NameIdCountryDate
Stacey T Marrier1000Russia2024-05-31
Salvatore F Schemmer1001Argentina2024-06-20
Sinclair W Marrier1002United Kingdom2024-05-25
Murillo R Figeroa1003Spain2024-06-05
Maria B Venere1004India2024-06-17
Antonio H Campain1005United Kingdom2024-06-05
Deepesh R Kusko1006Argentina2024-05-31
Aditya A Malet1007India2024-06-21
Misaki G Rulapaugh1008India2024-06-11
Tony H Gaucho1009Australia2024-05-24
Stacey B Bolognia1010France2024-06-18
Adams F Paprocki1011Argentina2024-06-20
Faith B Rulapaugh1012Italy2024-06-12
Kaitlin X Iturbide1013Spain2024-06-03
Morrow J Nicka1014Russia2024-05-29
Jennifer P Darakjy1015India2024-06-19
Ricardo W Figeroa1016France2024-06-10
Antonio W Paprocki1017United Kingdom2024-06-03
Silvio H Caldarera1018United Kingdom2024-05-31
Clifford D Amigon1019Australia2024-06-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro Y BowleyIndiaAsiya Javayant RENEWAL
Jones D FigeroaFranceAsiya Javayant NEW
Sinclair E RimRussiaXuxue Feng NEGOTIATION
Francesco N OstroskyGermanyIoni Bowcher UNQUALIFIED
Salvatore B ChuiJapanIoni Bowcher PROPOSAL
Salvatore K OldroydRussiaIvan Magalhaes NEW
Clifford H DoeBrazilAnna Fali NEGOTIATION
Julie M KuskoFranceIvan Magalhaes QUALIFIED
Salvatore O GauchoJapanIoni Bowcher UNQUALIFIED
Kadeem F GarufiBrazilAsiya Javayant RENEWAL
Emily J WhobreyCanadaAnna Fali UNQUALIFIED
Mayumi O TollnerJapanAsiya Javayant QUALIFIED
Julie O NickaCanadaElwin Sharvill QUALIFIED
Aika E MorascaIndiaOnyama Limba PROPOSAL
Claire Z SaylorsJapanIoni Bowcher PROPOSAL
Sinclair K MaletSpainElwin Sharvill NEW
Maisha S StockhamRussiaXuxue Feng NEGOTIATION
Aditya N CaldareraIndiaStephen Shaw NEW
Izzy U FollerJapanAnna Fali NEW
Izzy F MacleadBrazilElwin Sharvill PROPOSAL
Maria J MacleadSpainIvan Magalhaes NEGOTIATION
Ricardo C CampainArgentinaAsiya Javayant UNQUALIFIED
Juan P CaudyCanadaElwin Sharvill UNQUALIFIED
Sinclair X StockhamIndiaXuxue Feng NEGOTIATION
Murillo U PaprockiJapanBernardo Dominic RENEWAL
Octavia Y MaletFranceBernardo Dominic PROPOSAL
Stacey U FerenczSpainAsiya Javayant PROPOSAL
Leon U CampainCanadaElwin Sharvill UNQUALIFIED
Johnson S AlbaresCanadaBernardo Dominic RENEWAL
Smith X AlbaresRussiaIvan Magalhaes NEGOTIATION
Misaki L MorascaBrazilIvan Magalhaes NEW
Darci C SlusarskiFranceBernardo Dominic NEW
Faith G CaudyUnited KingdomStephen Shaw NEGOTIATION
Wickens Y KolmetzItalyAmy Elsner NEW
Kadeem J TollnerFranceIvan Magalhaes NEGOTIATION
Darci P CaldareraFranceXuxue Feng UNQUALIFIED
Isabel C IturbideRussiaIoni Bowcher UNQUALIFIED
Antonio K SergiIndiaAnna Fali PROPOSAL
Kaitlin V IturbideFranceAmy Elsner UNQUALIFIED
Tony I VenereIndiaElwin Sharvill 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>