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 T MaletFranceStephen Shaw UNQUALIFIED
Chavez Q FerenczUnited KingdomAnna Fali PROPOSAL
Morrow L MaletArgentinaAnna Fali QUALIFIED
Aika P CampainItalyOnyama Limba NEGOTIATION
Kadeem V NickaBrazilOnyama Limba NEW
Emily X SchemmerFranceAmy Elsner NEGOTIATION
Adams K GarufiCanadaAsiya Javayant QUALIFIED
Emily Y VocelkaArgentinaElwin Sharvill RENEWAL
Jennifer L KolmetzFranceElwin Sharvill NEW
Deepesh G PaprockiBrazilAmy Elsner UNQUALIFIED
Tony N StensethJapanXuxue Feng RENEWAL
Stacey I GlickBrazilAmy Elsner QUALIFIED
Kaitlin N SlusarskiGermanyStephen Shaw PROPOSAL
Silvio C PaprockiIndiaXuxue Feng QUALIFIED
Salvatore I TollnerFranceIoni Bowcher UNQUALIFIED
Kaitlin S RutaArgentinaIvan Magalhaes UNQUALIFIED
Maria B MarrierIndiaIoni Bowcher NEW
James Q SaylorsRussiaAmy Elsner RENEWAL
Emily R GlickSpainIvan Magalhaes QUALIFIED
Tony Z BriddickGermanyAnna Fali RENEWAL
Claire N MacleadUnited KingdomAnna Fali NEGOTIATION
Octavia I WaycottFranceAmy Elsner UNQUALIFIED
Deepesh A StockhamArgentinaStephen Shaw PROPOSAL
Deepesh S FigeroaGermanyIoni Bowcher RENEWAL
Johnson J SergiRussiaAsiya Javayant RENEWAL
Smith X WhobreyItalyAnna Fali RENEWAL
Leon V DilliardCanadaIvan Magalhaes PROPOSAL
Aika D StensethItalyBernardo Dominic PROPOSAL
Murillo Y StockhamUnited KingdomElwin Sharvill NEW
Salvatore I BriddickItalyStephen Shaw UNQUALIFIED
Alejandro J PoquetteCanadaBernardo Dominic PROPOSAL
Jefferson E OstroskyIndiaAmy Elsner UNQUALIFIED
Salvatore G WhobreyItalyOnyama Limba RENEWAL
Morrow C MaletAustraliaAnna Fali UNQUALIFIED
Maisha F WaycottRussiaAmy Elsner NEGOTIATION
Jefferson R SchemmerAustraliaAmy Elsner PROPOSAL
Jones C WaycottBrazilAsiya Javayant NEGOTIATION
Johnson E AlbaresSpainIoni Bowcher NEW
Costa L SergiBrazilElwin Sharvill QUALIFIED
Silvio Y ButtBrazilOnyama Limba PROPOSAL
Maisha C OldroydSpainIvan Magalhaes NEGOTIATION
Munro C PoquetteRussiaIoni Bowcher UNQUALIFIED
Antonio P SergiAustraliaAnna Fali UNQUALIFIED
Emily I RutaItalyOnyama Limba QUALIFIED
Isabel D KuskoJapanStephen Shaw NEW
Smith I OstroskyJapanOnyama Limba NEGOTIATION
Leon K FerenczItalyBernardo Dominic NEGOTIATION
Sinclair T MarrierSpainIoni Bowcher NEGOTIATION
Darci D StockhamUnited KingdomIoni Bowcher NEW
Julie F SergiBrazilIvan Magalhaes QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Claire E KolmetzCanadaStephen Shaw QUALIFIED
Julie K AlbaresJapanXuxue Feng PROPOSAL
Julie R MaletAustraliaIoni Bowcher RENEWAL
Greenwood E OstroskyArgentinaIoni Bowcher UNQUALIFIED
Nicolas X NickaCanadaElwin Sharvill PROPOSAL
Stacey L VenereFranceXuxue Feng RENEWAL
Clifford Z WaycottAustraliaStephen Shaw RENEWAL
James P KolmetzFranceIoni Bowcher PROPOSAL
Tony P FollerItalyXuxue Feng NEGOTIATION
Mujtaba T MarrierBrazilIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Wickens N PerinSpain2024-06-23Chanay, Jeffrey A Esq RENEWAL65Elwin Sharvill
1001Smith P GarufiBrazil2024-06-02Rangoni Of Florence QUALIFIED93Xuxue Feng
1002Francesco S MarrierUnited Kingdom2024-06-11Benton, John B Jr NEGOTIATION3Amy Elsner
1003Greenwood A SlusarskiFrance2024-05-29Printing Dimensions UNQUALIFIED35Asiya Javayant
1004Darci I SchemmerItaly2024-06-05Buckley Miller Wright PROPOSAL15Xuxue Feng
1005Emily A RulapaughAustralia2024-06-19Morlong Associates NEGOTIATION89Amy Elsner
1006Jefferson D KuskoCanada2024-06-10Printing Dimensions NEW86Bernardo Dominic
1007Wickens D OldroydRussia2024-06-09Morlong Associates RENEWAL55Onyama Limba
1008Jefferson R WhobreyCanada2024-06-02Chapman, Ross E Esq QUALIFIED32Ivan Magalhaes
1009Izzy O PoquetteItaly2024-06-05Truhlar And Truhlar Attys PROPOSAL37Asiya Javayant
1010Jefferson V OstroskyRussia2024-06-13Truhlar And Truhlar Attys QUALIFIED73Elwin Sharvill
1011Murillo U BologniaArgentina2024-06-21King, Christopher A Esq PROPOSAL61Asiya Javayant
1012Isabel E WieserAustralia2024-05-28Feiner Bros NEW78Amy Elsner
1013Juan K CampainArgentina2024-06-18Buckley Miller Wright NEGOTIATION79Asiya Javayant
1014Francesco W CaudyFrance2024-06-12Morlong Associates RENEWAL68Amy Elsner
1015Cody A CaudyArgentina2024-06-13Commercial Press NEW86Asiya Javayant
1016Silvio S VocelkaSpain2024-05-30Rousseaux, Michael Esq RENEWAL94Ivan Magalhaes
1017Jennifer J RulapaughCanada2024-05-29Benton, John B Jr QUALIFIED40Onyama Limba
1018Silvio U OstroskyRussia2024-06-10Benton, John B Jr NEGOTIATION28Stephen Shaw
1019Misaki R GarufiSpain2024-06-16Chemel, James L Cpa QUALIFIED45Bernardo Dominic
1020Greenwood Y GarufiItaly2024-06-13Truhlar And Truhlar Attys RENEWAL84Amy Elsner
1021Claire M RimUnited Kingdom2024-06-12Chanay, Jeffrey A Esq NEGOTIATION48Asiya Javayant
1022Costa B BowleyBrazil2024-06-12King, Christopher A Esq RENEWAL25Stephen Shaw
1023Claire A ShinkoItaly2024-05-31Rangoni Of Florence PROPOSAL86Ioni Bowcher
1024Adams I RoysterItaly2024-06-13Commercial Press QUALIFIED1Bernardo Dominic
1025Tony U PoquetteSpain2024-06-07Feiner Bros NEW4Bernardo Dominic
1026Mayumi O WhobreyArgentina2024-06-21Rangoni Of Florence NEGOTIATION83Elwin Sharvill
1027Costa N InouyeArgentina2024-05-31Dorl, James J Esq UNQUALIFIED58Bernardo Dominic
1028Octavia C FerenczIndia2024-06-02Dorl, James J Esq NEW48Elwin Sharvill
1029Maria N BriddickGermany2024-06-04Morlong Associates NEW22Ioni Bowcher
1030Jones B AmigonRussia2024-06-01Printing Dimensions UNQUALIFIED34Xuxue Feng
1031Antonio X SergiJapan2024-06-13Commercial Press RENEWAL91Ioni Bowcher
1032Stacey F WieserUnited Kingdom2024-06-17Rangoni Of Florence QUALIFIED73Asiya Javayant
1033James K PoquetteRussia2024-06-11Truhlar And Truhlar Attys RENEWAL20Anna Fali
1034Chavez N MaletCanada2024-06-15Printing Dimensions QUALIFIED55Amy Elsner
1035Maisha T MorascaItaly2024-06-13Feiner Bros UNQUALIFIED93Xuxue Feng
1036Octavia Z CaudyArgentina2024-06-01Chapman, Ross E Esq QUALIFIED86Bernardo Dominic
1037Ricardo Y OstroskyCanada2024-06-05Chemel, James L Cpa NEW38Onyama Limba
1038Mayumi H BowleyCanada2024-06-13Feiner Bros NEGOTIATION82Asiya Javayant
1039Deepesh F GauchoArgentina2024-06-11Benton, John B Jr RENEWAL62Xuxue Feng
1040Ricardo O NickaSpain2024-05-28Truhlar And Truhlar Attys RENEWAL38Amy Elsner
1041David J KuskoArgentina2024-06-06Dorl, James J Esq NEW78Anna Fali
1042Jeanfrancois N RulapaughGermany2024-06-06Printing Dimensions PROPOSAL38Elwin Sharvill
1043Jefferson J CaudyCanada2024-05-29Morlong Associates PROPOSAL25Ivan Magalhaes
1044Jennifer D RutaUnited Kingdom2024-06-03Morlong Associates QUALIFIED55Asiya Javayant
1045Alejandro Y DarakjyJapan2024-05-27Truhlar And Truhlar Attys NEW49Xuxue Feng
1046Aditya C CaudyItaly2024-06-23Truhlar And Truhlar Attys QUALIFIED10Elwin Sharvill
1047David Q RimSpain2024-06-11Chanay, Jeffrey A Esq PROPOSAL42Ivan Magalhaes
1048Claire Z GarufiItaly2024-06-02Rangoni Of Florence QUALIFIED9Stephen Shaw
1049Jennifer Y CampainBrazil2024-06-18Buckley Miller Wright UNQUALIFIED14Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Clifford G WaycottBrazilXuxue Feng NEGOTIATION
Aruna A PerinIndiaOnyama Limba RENEWAL
Jeanfrancois S MarrierJapanElwin Sharvill UNQUALIFIED
Rodrigues F StockhamAustraliaAmy Elsner UNQUALIFIED
Jeanfrancois U RimArgentinaOnyama Limba NEGOTIATION
Julie H AmigonCanadaXuxue Feng QUALIFIED
Deepesh E AlbaresGermanyBernardo Dominic QUALIFIED
Mayumi Z WieserCanadaAsiya Javayant NEGOTIATION
Morrow S VocelkaCanadaBernardo Dominic PROPOSAL
Adams J DoeJapanAsiya Javayant PROPOSAL
Isabel P DarakjyItalyStephen Shaw PROPOSAL
Tony W MaletIndiaOnyama Limba NEGOTIATION
Aruna Q AmigonFranceAmy Elsner NEW
Mujtaba A WaycottRussiaAsiya Javayant NEW
Morrow F IturbideItalyElwin Sharvill PROPOSAL
Faith P MacleadRussiaOnyama Limba PROPOSAL
Silvio O WieserIndiaIoni Bowcher PROPOSAL
Mayumi O AlbaresAustraliaAsiya Javayant NEGOTIATION
Johnson R NestleSpainAnna Fali NEW
Faith J BowleyFranceAsiya Javayant UNQUALIFIED
Rodrigues L MaletFranceIvan Magalhaes NEW
Salvatore I DarakjyGermanyIvan Magalhaes NEGOTIATION
Munro P FigeroaGermanyStephen Shaw UNQUALIFIED
Wickens T RimItalyAsiya Javayant NEW
Aika L WhobreyCanadaXuxue Feng UNQUALIFIED
Maisha F OldroydIndiaXuxue Feng UNQUALIFIED
Cody P DilliardJapanIoni Bowcher RENEWAL
Maisha N GauchoIndiaStephen Shaw NEW
Kaitlin G NickaBrazilElwin Sharvill RENEWAL
Claire P NestleSpainStephen Shaw QUALIFIED
Mayumi M SchemmerArgentinaElwin Sharvill NEW
James Y PoquetteFranceAmy Elsner NEW
Jefferson K CaldareraItalyAsiya Javayant NEW
Clifford B RutaAustraliaAsiya Javayant NEW
Smith H WaycottJapanXuxue Feng NEGOTIATION
Julie V FollerCanadaAmy Elsner PROPOSAL
Leja D MaletRussiaAmy Elsner RENEWAL
Smith A MarrierUnited KingdomElwin Sharvill QUALIFIED
Stacey J KolmetzRussiaIoni Bowcher QUALIFIED
Nicolas E VocelkaCanadaIvan Magalhaes NEGOTIATION
Salvatore E GlickSpainOnyama Limba NEGOTIATION
Ashley P SergiFranceElwin Sharvill QUALIFIED
Murillo T DarakjyGermanyIoni Bowcher UNQUALIFIED
Deepesh X CampainUnited KingdomAnna Fali RENEWAL
Antonio P KuskoItalyOnyama Limba QUALIFIED
Kaitlin D FigeroaJapanAsiya Javayant PROPOSAL
Sinclair B CaudySpainBernardo Dominic UNQUALIFIED
Jefferson L StockhamItalyStephen Shaw PROPOSAL
Salvatore O FerenczSpainAmy Elsner QUALIFIED
James A MaletAustraliaOnyama Limba PROPOSAL
Frozen Columns
Name
Julie I Darakjy
Costa J Royster
Clifford O Doe
Juan R Flosi
Octavia W Butt
Kaitlin S Rim
Octavia U Ruta
Ivar Q Chui
Cody V Ruta
Kaitlin I Marrier
Claire B Inouye
Smith S Oldroyd
Jones K Ostrosky
Aruna G Saylors
Costa D Saylors
Deepesh I Garufi
Francesco T Iturbide
Mayumi K Morasca
Johnson P Malet
Johnson W Whobrey
Emily G Gaucho
Leon E Perin
David V Waycott
Claire R Venere
Francesco V Ferencz
Octavia L Marrier
Murillo C Inouye
Deepesh O Saylors
Wickens H Iturbide
Mujtaba P Rulapaugh
Silvio A Briddick
Julie R Malet
Arvin K Nicka
Juan D Garufi
James W Kusko
Nicolas B Wieser
Kadeem S Kusko
Jeanfrancois B Kolmetz
Antonio Q Malet
Izzy D Malet
Jefferson Y Darakjy
Costa H Shinko
Isabel O Glick
David L Slusarski
Jefferson B Maclead
Murillo H Rulapaugh
Leja U Kusko
Salvatore B Ruta
Greenwood J Caldarera
Jeanfrancois W Gaucho
IdCountryDate
1000France2024-05-27
1001Brazil2024-06-23
1002United Kingdom2024-06-19
1003Italy2024-06-06
1004Canada2024-06-21
1005India2024-06-11
1006Brazil2024-06-06
1007Japan2024-06-01
1008Canada2024-06-20
1009Brazil2024-06-22
1010Brazil2024-05-29
1011India2024-05-29
1012Japan2024-06-06
1013Spain2024-05-27
1014Russia2024-06-13
1015France2024-06-21
1016India2024-06-02
1017Spain2024-06-11
1018Japan2024-05-26
1019India2024-05-28
1020United Kingdom2024-06-15
1021France2024-06-16
1022Spain2024-05-29
1023Spain2024-06-10
1024Brazil2024-05-31
1025Argentina2024-06-11
1026Japan2024-06-03
1027India2024-06-06
1028United Kingdom2024-06-14
1029Brazil2024-06-24
1030India2024-06-08
1031India2024-06-09
1032France2024-06-18
1033Australia2024-06-11
1034United Kingdom2024-06-04
1035Argentina2024-06-14
1036Spain2024-05-27
1037Brazil2024-06-24
1038France2024-06-07
1039India2024-06-07
1040Italy2024-06-04
1041United Kingdom2024-06-07
1042Canada2024-06-09
1043Germany2024-06-18
1044Germany2024-06-09
1045Italy2024-05-28
1046United Kingdom2024-06-24
1047France2024-06-16
1048Italy2024-06-16
1049Australia2024-06-08

On-Demand Data

NameIdCountryDate
Tony M Malet1000Italy2024-05-31
Morrow L Nestle1001United Kingdom2024-06-11
Maria C Briddick1002India2024-06-02
Rodrigues F Chui1003Australia2024-06-20
Mujtaba T Rim1004United Kingdom2024-06-24
Kadeem E Rulapaugh1005Australia2024-06-17
Kaitlin U Stockham1006United Kingdom2024-06-01
Leja L Stenseth1007Argentina2024-06-13
Darci N Ruta1008Japan2024-06-21
Maria V Caldarera1009Brazil2024-06-04
Nicolas Q Amigon1010France2024-06-10
Juan Y Rim1011Spain2024-06-15
Nicolas J Flosi1012France2024-06-04
Leon G Ostrosky1013France2024-06-07
Aika R Chui1014Argentina2024-05-27
David O Perin1015India2024-06-19
Jones P Amigon1016Spain2024-06-11
Izzy A Iturbide1017France2024-06-04
Jeanfrancois U Briddick1018United Kingdom2024-05-27
Jennifer J Vocelka1019France2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jefferson T SaylorsItalyAnna Fali QUALIFIED
Juan P StockhamRussiaXuxue Feng UNQUALIFIED
Greenwood U GlickUnited KingdomAnna Fali QUALIFIED
Kaitlin F StensethArgentinaOnyama Limba NEGOTIATION
Leon A GauchoJapanIoni Bowcher PROPOSAL
Adams X VenereIndiaStephen Shaw RENEWAL
Isabel B KuskoGermanyAsiya Javayant UNQUALIFIED
Stacey E StensethUnited KingdomAnna Fali QUALIFIED
David J DoeItalyBernardo Dominic QUALIFIED
Julie L KuskoSpainAsiya Javayant PROPOSAL
Leja K PaprockiAustraliaXuxue Feng NEW
Maisha S DoeGermanyOnyama Limba UNQUALIFIED
James G MaletFranceXuxue Feng PROPOSAL
Jeanfrancois U DilliardUnited KingdomAmy Elsner QUALIFIED
Silvio B FigeroaBrazilAnna Fali NEGOTIATION
Ashley R NickaBrazilElwin Sharvill UNQUALIFIED
Munro F BologniaSpainStephen Shaw NEGOTIATION
Ashley M ChuiArgentinaAsiya Javayant PROPOSAL
Kadeem I BowleyAustraliaStephen Shaw RENEWAL
Silvio C DilliardGermanyOnyama Limba QUALIFIED
Arvin Z DoeFranceOnyama Limba RENEWAL
Tony G RutaFranceXuxue Feng PROPOSAL
Francesco P OldroydJapanOnyama Limba NEGOTIATION
Wickens C FerenczFranceOnyama Limba NEGOTIATION
Maria W AlbaresJapanBernardo Dominic NEW
Leja K MaletCanadaIvan Magalhaes PROPOSAL
Jeanfrancois K OstroskyJapanStephen Shaw QUALIFIED
Johnson Q GauchoUnited KingdomIvan Magalhaes PROPOSAL
Jeanfrancois U StockhamJapanBernardo Dominic RENEWAL
Cody D WhobreyItalyOnyama Limba QUALIFIED
Aika O ChuiBrazilBernardo Dominic PROPOSAL
Munro C WhobreyGermanyXuxue Feng NEW
Antonio H RimArgentinaStephen Shaw UNQUALIFIED
Wickens Z GillianSpainAsiya Javayant PROPOSAL
Kadeem W OstroskyUnited KingdomAmy Elsner RENEWAL
Faith L PaprockiCanadaElwin Sharvill NEGOTIATION
Rodrigues I RulapaughItalyStephen Shaw NEW
Aika E StockhamSpainElwin Sharvill NEW
Kadeem H FollerIndiaAsiya Javayant UNQUALIFIED
Aditya Z MorascaUnited KingdomAnna Fali NEGOTIATION

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