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
Claire L NestleIndiaStephen Shaw QUALIFIED
Wickens O GarufiItalyBernardo Dominic PROPOSAL
Johnson M SchemmerFranceStephen Shaw UNQUALIFIED
Darci F FerenczJapanXuxue Feng PROPOSAL
Juan G AmigonJapanAsiya Javayant NEGOTIATION
Mujtaba I PerinJapanIvan Magalhaes NEGOTIATION
Octavia N VocelkaRussiaAmy Elsner UNQUALIFIED
Leon B IturbideIndiaBernardo Dominic PROPOSAL
Jennifer I SaylorsRussiaXuxue Feng UNQUALIFIED
Antonio C RimIndiaAmy Elsner UNQUALIFIED
Wickens L KuskoCanadaElwin Sharvill RENEWAL
Claire J SchemmerUnited KingdomAmy Elsner UNQUALIFIED
Jeanfrancois F GlickBrazilStephen Shaw UNQUALIFIED
Faith K DoeGermanyAnna Fali NEW
Smith G WieserRussiaIoni Bowcher PROPOSAL
Silvio O GarufiGermanyXuxue Feng UNQUALIFIED
Morrow R SlusarskiArgentinaAmy Elsner NEGOTIATION
Chavez R CaudyArgentinaStephen Shaw UNQUALIFIED
Maria Y DilliardBrazilBernardo Dominic RENEWAL
Darci G WhobreyCanadaXuxue Feng UNQUALIFIED
Kadeem Y OldroydGermanyAnna Fali PROPOSAL
Kadeem W StockhamIndiaElwin Sharvill UNQUALIFIED
Isabel Q WhobreyCanadaAnna Fali QUALIFIED
Tony O CampainRussiaXuxue Feng PROPOSAL
Silvio K AlbaresJapanElwin Sharvill PROPOSAL
Juan T FlosiAustraliaAsiya Javayant RENEWAL
Maisha U SchemmerRussiaXuxue Feng UNQUALIFIED
Stacey B FollerCanadaIvan Magalhaes RENEWAL
Nicolas D MarrierSpainAsiya Javayant PROPOSAL
Jones K PoquetteUnited KingdomBernardo Dominic NEGOTIATION
Jennifer K BriddickGermanyAsiya Javayant NEGOTIATION
Nicolas U WieserJapanElwin Sharvill NEGOTIATION
Leja Y MorascaCanadaElwin Sharvill PROPOSAL
Julie E OldroydAustraliaAmy Elsner RENEWAL
Mujtaba Q AmigonCanadaAmy Elsner PROPOSAL
Faith N GauchoArgentinaBernardo Dominic QUALIFIED
Stacey L SergiAustraliaAsiya Javayant UNQUALIFIED
Adams P WaycottJapanAnna Fali QUALIFIED
Antonio M AlbaresBrazilIvan Magalhaes RENEWAL
Juan F TollnerItalyXuxue Feng UNQUALIFIED
Isabel K InouyeRussiaAnna Fali QUALIFIED
Alejandro M RutaUnited KingdomBernardo Dominic NEW
Smith Q RoysterIndiaIvan Magalhaes NEW
Francesco K RulapaughCanadaBernardo Dominic NEGOTIATION
Jefferson V MaletFranceAnna Fali PROPOSAL
Munro J KolmetzArgentinaAnna Fali QUALIFIED
Leon D MaletAustraliaElwin Sharvill NEW
Faith Z StockhamCanadaBernardo Dominic NEGOTIATION
Rodrigues H WaycottIndiaAnna Fali NEW
Antonio T GauchoItalyAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Aruna L GillianFranceAsiya Javayant PROPOSAL
Jennifer S RimArgentinaIvan Magalhaes NEGOTIATION
Jones G DilliardIndiaBernardo Dominic UNQUALIFIED
James S BowleyUnited KingdomAmy Elsner UNQUALIFIED
Mujtaba K BriddickIndiaStephen Shaw PROPOSAL
Wickens Y GlickUnited KingdomXuxue Feng QUALIFIED
Faith Y StockhamJapanOnyama Limba UNQUALIFIED
Munro H TollnerBrazilAmy Elsner RENEWAL
Ricardo C WieserArgentinaIoni Bowcher NEW
Francesco O CaldareraRussiaStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer R FlosiRussia2024-06-20Rousseaux, Michael Esq UNQUALIFIED91Anna Fali
1001Wickens U AmigonJapan2024-06-09Chapman, Ross E Esq NEGOTIATION95Anna Fali
1002Wickens E CampainGermany2024-05-28Feiner Bros NEW18Amy Elsner
1003Jeanfrancois P MaletIndia2024-06-14Truhlar And Truhlar Attys PROPOSAL43Anna Fali
1004Octavia M CaudyIndia2024-06-03Benton, John B Jr NEW73Ioni Bowcher
1005Wickens L StensethAustralia2024-06-14Printing Dimensions QUALIFIED41Anna Fali
1006Arvin P BologniaFrance2024-06-05Chapman, Ross E Esq NEW84Asiya Javayant
1007Mujtaba B StensethGermany2024-06-12Rousseaux, Michael Esq PROPOSAL54Ivan Magalhaes
1008Emily M RoysterJapan2024-05-31Benton, John B Jr NEW47Ivan Magalhaes
1009Darci P SchemmerCanada2024-06-20Chanay, Jeffrey A Esq RENEWAL23Asiya Javayant
1010Chavez E MaletGermany2024-06-18Morlong Associates PROPOSAL76Bernardo Dominic
1011Aika S GarufiIndia2024-06-18Benton, John B Jr NEW29Ivan Magalhaes
1012Leja O CampainAustralia2024-06-06Rangoni Of Florence PROPOSAL1Elwin Sharvill
1013Adams V CaldareraIndia2024-06-05Buckley Miller Wright QUALIFIED42Elwin Sharvill
1014Ashley Q RutaBrazil2024-06-01Benton, John B Jr NEGOTIATION17Bernardo Dominic
1015Julie U GarufiJapan2024-06-03Morlong Associates QUALIFIED42Stephen Shaw
1016Mayumi N OldroydJapan2024-06-12Printing Dimensions NEGOTIATION88Ivan Magalhaes
1017Ivar O SaylorsSpain2024-06-21Feiner Bros PROPOSAL30Bernardo Dominic
1018Isabel D CaldareraSpain2024-06-03Chanay, Jeffrey A Esq NEGOTIATION72Ivan Magalhaes
1019Emily L OstroskyJapan2024-06-16Rangoni Of Florence NEW91Ioni Bowcher
1020Francesco Q TollnerCanada2024-06-01Dorl, James J Esq PROPOSAL99Xuxue Feng
1021Mujtaba D VenereCanada2024-06-20Feltz Printing Service NEW57Ioni Bowcher
1022Deepesh D CaldareraSpain2024-06-14Buckley Miller Wright PROPOSAL3Onyama Limba
1023Stacey E BologniaCanada2024-06-10Chapman, Ross E Esq PROPOSAL43Ioni Bowcher
1024Izzy L MaletArgentina2024-06-01Printing Dimensions NEGOTIATION43Onyama Limba
1025Maria X IturbideUnited Kingdom2024-06-15Morlong Associates NEGOTIATION96Anna Fali
1026Kadeem D NickaSpain2024-06-11Morlong Associates UNQUALIFIED97Anna Fali
1027Adams P MorascaItaly2024-06-07Buckley Miller Wright PROPOSAL12Ivan Magalhaes
1028Morrow V ButtBrazil2024-05-23Morlong Associates NEGOTIATION8Stephen Shaw
1029Juan M MaletCanada2024-06-21Rangoni Of Florence NEGOTIATION77Bernardo Dominic
1030Ivar I GlickSpain2024-06-20Benton, John B Jr NEW99Elwin Sharvill
1031Rodrigues H MarrierItaly2024-06-05Commercial Press QUALIFIED48Stephen Shaw
1032Munro W GillianCanada2024-06-10Printing Dimensions NEW98Xuxue Feng
1033Julie L OldroydIndia2024-06-09Benton, John B Jr NEGOTIATION48Onyama Limba
1034Kadeem T BowleyRussia2024-05-30Printing Dimensions PROPOSAL58Onyama Limba
1035Greenwood Y InouyeArgentina2024-06-20Printing Dimensions NEW53Anna Fali
1036Rodrigues U FerenczRussia2024-06-16Commercial Press NEGOTIATION42Ivan Magalhaes
1037Aditya F WieserCanada2024-06-12Truhlar And Truhlar Attys RENEWAL47Stephen Shaw
1038James F IturbideUnited Kingdom2024-05-30Printing Dimensions RENEWAL20Ivan Magalhaes
1039Antonio L FigeroaRussia2024-05-30Rangoni Of Florence UNQUALIFIED14Asiya Javayant
1040Jones C RutaJapan2024-05-23Feiner Bros QUALIFIED17Asiya Javayant
1041Alejandro F SaylorsAustralia2024-05-27King, Christopher A Esq PROPOSAL98Bernardo Dominic
1042Maisha P MaletRussia2024-06-14Chanay, Jeffrey A Esq NEW65Elwin Sharvill
1043Faith S NestleSpain2024-06-01Rousseaux, Michael Esq NEGOTIATION66Anna Fali
1044Wickens X MaletItaly2024-05-29Dorl, James J Esq PROPOSAL78Elwin Sharvill
1045Nicolas L IturbideIndia2024-06-01Benton, John B Jr NEGOTIATION2Bernardo Dominic
1046Jefferson H VenereIndia2024-05-30Feltz Printing Service RENEWAL18Onyama Limba
1047Emily J FerenczRussia2024-06-01King, Christopher A Esq NEW61Bernardo Dominic
1048Salvatore E OstroskyJapan2024-06-19Chapman, Ross E Esq QUALIFIED36Ivan Magalhaes
1049Nicolas Y FollerAustralia2024-06-04Truhlar And Truhlar Attys NEGOTIATION5Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Murillo D PoquetteItalyBernardo Dominic PROPOSAL
Faith F BologniaRussiaAsiya Javayant NEW
Francesco N WhobreyArgentinaAnna Fali QUALIFIED
Aruna V RulapaughUnited KingdomAnna Fali PROPOSAL
Faith N BowleyCanadaAnna Fali NEW
Maisha Y NickaGermanyElwin Sharvill RENEWAL
Ashley H GauchoUnited KingdomIvan Magalhaes RENEWAL
Aruna Z StockhamRussiaAnna Fali NEGOTIATION
Arvin K WhobreyGermanyAsiya Javayant UNQUALIFIED
Sinclair O GillianJapanOnyama Limba NEGOTIATION
Alejandro Y OstroskySpainElwin Sharvill NEW
Aika Y GauchoBrazilIoni Bowcher PROPOSAL
Ashley W VenereUnited KingdomElwin Sharvill NEGOTIATION
James H SlusarskiRussiaStephen Shaw NEGOTIATION
Aditya M RutaUnited KingdomBernardo Dominic PROPOSAL
David A MorascaBrazilElwin Sharvill UNQUALIFIED
Morrow F MaletItalyIvan Magalhaes NEGOTIATION
Faith V PaprockiGermanyIvan Magalhaes NEW
Jennifer L GillianArgentinaIoni Bowcher QUALIFIED
Kadeem W FerenczJapanAmy Elsner UNQUALIFIED
Misaki J WhobreyItalyBernardo Dominic NEW
Kadeem B FlosiUnited KingdomAnna Fali NEW
Morrow T PerinFranceAnna Fali QUALIFIED
Aruna O WhobreyRussiaAsiya Javayant NEGOTIATION
Misaki J ChuiBrazilElwin Sharvill PROPOSAL
Costa T GlickAustraliaIvan Magalhaes NEGOTIATION
Maisha E FlosiAustraliaIvan Magalhaes NEGOTIATION
Clifford P AlbaresGermanyOnyama Limba RENEWAL
James Q VocelkaAustraliaOnyama Limba NEGOTIATION
Johnson X VenereJapanAnna Fali NEW
Mujtaba B MaletItalyIoni Bowcher UNQUALIFIED
Aditya G IturbideBrazilXuxue Feng RENEWAL
Adams R VocelkaBrazilIvan Magalhaes NEW
Faith M MorascaBrazilOnyama Limba UNQUALIFIED
Jennifer V DoeJapanOnyama Limba UNQUALIFIED
Arvin N VenereCanadaStephen Shaw RENEWAL
Julie B BriddickIndiaElwin Sharvill NEW
Leja J MaletCanadaAmy Elsner UNQUALIFIED
Octavia Z GillianAustraliaAnna Fali PROPOSAL
Adams V FollerItalyIoni Bowcher RENEWAL
Nicolas K MarrierRussiaStephen Shaw PROPOSAL
Kadeem Q SchemmerRussiaOnyama Limba QUALIFIED
Aika U MaletRussiaAsiya Javayant NEW
Jennifer E AmigonSpainAmy Elsner QUALIFIED
Izzy S GarufiGermanyAnna Fali PROPOSAL
Johnson S PoquetteJapanAnna Fali QUALIFIED
Mayumi U ShinkoBrazilIvan Magalhaes RENEWAL
Jennifer F RoysterIndiaBernardo Dominic RENEWAL
Wickens Z MaletIndiaXuxue Feng UNQUALIFIED
Aditya O WhobreyUnited KingdomIoni Bowcher PROPOSAL
Frozen Columns
Name
Juan L Wieser
Rodrigues L Gillian
Rodrigues P Poquette
Smith Y Glick
Deepesh P Figeroa
Kadeem X Vocelka
Juan S Iturbide
Aika H Whobrey
Smith H Venere
Misaki V Maclead
Leon X Tollner
Misaki D Bolognia
Clifford K Ferencz
Smith T Kolmetz
Silvio O Malet
Stacey X Malet
Juan N Caldarera
Costa D Butt
Aditya Z Poquette
James P Chui
Nicolas E Malet
Murillo X Ostrosky
Munro W Inouye
Francesco I Briddick
Aruna A Stockham
Chavez Q Vocelka
Rodrigues R Stenseth
Juan X Maclead
Ricardo V Nicka
David D Kolmetz
Emily P Briddick
James O Iturbide
Greenwood D Dilliard
Francesco R Bowley
Misaki X Briddick
Aditya Z Albares
Murillo U Poquette
Smith U Malet
Leon X Morasca
Jeanfrancois O Briddick
Alejandro D Ostrosky
Cody Z Darakjy
Jones M Slusarski
Greenwood P Butt
Ashley B Caudy
Cody F Venere
Munro O Caudy
Deepesh B Wieser
Aruna L Gillian
Jeanfrancois Z Rim
IdCountryDate
1000Italy2024-06-01
1001Canada2024-06-08
1002United Kingdom2024-05-27
1003Italy2024-06-11
1004United Kingdom2024-06-17
1005Russia2024-06-06
1006Italy2024-06-05
1007Australia2024-06-20
1008France2024-05-31
1009Spain2024-06-18
1010Spain2024-06-02
1011Italy2024-05-29
1012Japan2024-06-18
1013Russia2024-05-30
1014France2024-05-25
1015Brazil2024-06-11
1016India2024-05-26
1017India2024-06-14
1018Japan2024-06-21
1019Canada2024-05-29
1020Canada2024-06-09
1021France2024-05-29
1022Italy2024-06-21
1023Spain2024-06-04
1024Russia2024-06-17
1025Argentina2024-06-11
1026Japan2024-05-28
1027Australia2024-05-31
1028Canada2024-05-31
1029France2024-06-07
1030Australia2024-05-31
1031Japan2024-05-23
1032Argentina2024-06-19
1033Argentina2024-06-12
1034Canada2024-06-21
1035Canada2024-05-29
1036Germany2024-05-31
1037Russia2024-06-01
1038Spain2024-05-25
1039United Kingdom2024-06-17
1040United Kingdom2024-05-30
1041Brazil2024-06-10
1042India2024-06-02
1043India2024-06-16
1044Russia2024-06-19
1045India2024-05-30
1046Germany2024-05-25
1047Canada2024-06-15
1048India2024-06-14
1049Argentina2024-06-03

On-Demand Data

NameIdCountryDate
Costa T Kolmetz1000Australia2024-06-21
Leja Z Paprocki1001Germany2024-06-11
Ricardo Y Royster1002Australia2024-05-24
Darci C Paprocki1003Spain2024-05-30
Mayumi C Campain1004Canada2024-06-18
Kaitlin Q Royster1005Italy2024-05-28
Claire R Figeroa1006Germany2024-06-10
Aruna S Morasca1007Russia2024-05-31
Maria P Waycott1008Russia2024-06-06
Stacey O Shinko1009Argentina2024-06-14
Smith T Saylors1010Brazil2024-05-26
Antonio H Flosi1011Australia2024-05-23
Aditya A Marrier1012Japan2024-05-28
David L Vocelka1013Australia2024-06-21
Claire D Bolognia1014Argentina2024-05-24
Leon U Venere1015Canada2024-06-03
Leja R Ostrosky1016India2024-05-31
Sinclair B Shinko1017Brazil2024-06-03
James I Flosi1018Spain2024-05-28
Ashley M Stenseth1019Canada2024-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar H WieserFranceOnyama Limba PROPOSAL
Greenwood J SaylorsArgentinaOnyama Limba RENEWAL
Mujtaba U GlickIndiaAmy Elsner NEW
Aika Z SlusarskiCanadaElwin Sharvill UNQUALIFIED
Stacey F ChuiGermanyAsiya Javayant NEW
Julie J RoysterGermanyAmy Elsner UNQUALIFIED
Mayumi N PerinGermanyStephen Shaw QUALIFIED
Aditya V DoeCanadaElwin Sharvill PROPOSAL
Jefferson W MarrierArgentinaXuxue Feng NEGOTIATION
Ashley P VocelkaBrazilXuxue Feng NEGOTIATION
Nicolas L AlbaresCanadaElwin Sharvill NEGOTIATION
David W CaudyIndiaBernardo Dominic NEGOTIATION
Darci Y OldroydBrazilAnna Fali UNQUALIFIED
Maisha J GlickArgentinaXuxue Feng PROPOSAL
Emily S WaycottAustraliaBernardo Dominic QUALIFIED
Maria M MaletSpainElwin Sharvill RENEWAL
David H VocelkaIndiaXuxue Feng QUALIFIED
Adams P StensethJapanIoni Bowcher RENEWAL
Isabel O BriddickItalyAsiya Javayant NEW
Greenwood C WaycottBrazilAmy Elsner NEW
Izzy L FollerIndiaElwin Sharvill NEW
Stacey E RulapaughIndiaIoni Bowcher RENEWAL
Mujtaba Z FollerGermanyElwin Sharvill RENEWAL
Salvatore G BriddickBrazilStephen Shaw UNQUALIFIED
Isabel G CampainBrazilXuxue Feng RENEWAL
Tony P FollerArgentinaXuxue Feng NEW
Tony O GauchoItalyAsiya Javayant UNQUALIFIED
Arvin A FlosiUnited KingdomIvan Magalhaes PROPOSAL
Juan F GarufiCanadaAnna Fali PROPOSAL
Alejandro I RutaSpainElwin Sharvill NEGOTIATION
Jennifer Z SergiFranceIvan Magalhaes QUALIFIED
Wickens K StensethUnited KingdomAmy Elsner NEW
Jones Z ButtUnited KingdomAmy Elsner NEGOTIATION
Clifford T AmigonUnited KingdomIvan Magalhaes NEGOTIATION
Aruna V FlosiGermanyAmy Elsner UNQUALIFIED
Smith P WaycottArgentinaBernardo Dominic PROPOSAL
Kaitlin V GlickBrazilIvan Magalhaes QUALIFIED
Maria T TollnerAustraliaAnna Fali QUALIFIED
Rodrigues W WhobreyJapanOnyama Limba NEGOTIATION
Jefferson B InouyeBrazilBernardo Dominic UNQUALIFIED

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